- Notifications
You must be signed in to change notification settings - Fork149
.NET client binding for Neo4j
License
DotNet4Neo4j/Neo4jClient
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
A .NET client forNeo4j. Supports Cypher queries via fluent interfaces, and some indexing operations.
Grab the latest drop straight from theNeo4jClient
package onNuGet.
Readour wiki docs -Currently OUT OF DATE
The official Neo4jClient build and nuget package is automated viaAppVeyor.
Version 4.0.0 of Neo4jClient isnow the stable version. There have been a lot of changes, additions, removals, so it's likely there will be breaking changes.
This isn't an exhaustive list of things you need to do, but I'll try to add things if I've forgotten them.
You will need to use the correct URI for the server version you are connecting to:
- 3.x server:
http://localhost:7474/db/data
- 4.x server:
http://localhost:7474/
- 3.x or 4.x server:
neo4j://localhost:7687
- Worth reviewing theNeo4j Documentation to see what you need to use.
As this release is 100%async
you will need to update any calls toResults
orExecuteWithoutResults
to theirAsync
equivalents.
- Async endpoints only
- To get this release out,
Neo4jClient
isAsync
only now.
- To get this release out,
- Transactions will no longer use the
TransactionScope
class which means thatMSDTC will no longer work.- This has been an issue since the dawn of Core/NetStandard -
TransactionScope
may be in NetStandard now - but the other classes the Transaction code was relying on wasn't.
- This has been an issue since the dawn of Core/NetStandard -
- The
GraphClient
andBoltGraphClient
will no longer support Neo4j 3.4 or lower.- Largely this is because the
Neo4j.Driver
that does theBolt
side of things only targets 3.5+, and keeping all the backwards compatibility means a lot of work, for little gain.
- Largely this is because the
- Json.NET -
10.0.3
->12.0.3
- Neo4j.Driver.Signed -
1.7.2
->4.1.1
If you're changing from2.x
to3.x
, you'll want the below information, but you should really be on4.x
unless you have to target an older DB instance.
- Bolt!
- Transactions now use
AsyncLocal<>
instead ofThreadStatic
- Transactions still don't work in the .NET Core version for the same reason as listed below (in
Breaking Changes in 2.0
) TransactionScope
does exist inNetStandard 2.0
- but some of the other bits surrounding the Transaction management doesn't.
- Transactions still don't work in the .NET Core version for the same reason as listed below (in
- JSON.NET updated to 10.0.3
PathResults
doesn't work with Bolt, you need to usePathResultsBolt
instead.
- JSON.NET updated to 9.0.1
- If using theDotNet Core version of
Neo4jClient
- transactions willnot work. This will be returned when DotNet Core gets theTransactionScope
(Seethis comment for more details).
Licensed under MS-PL. SeeLICENSE
in the root of this repository for full license text.
I will not be updating the 3.x version of the client, the focus is on 4.x and the features that gives us. Neo4j no longer actively support Neo4j 3.4 so you should consider updating if you can. Largely - anyone using the3.x
version of the client is coping with it's deficiencies, and as 4.x addresses most of them. ¯_(ツ)_/¯
About
.NET client binding for Neo4j
Resources
License
Uh oh!
There was an error while loading.Please reload this page.