Question

I've been designing an application, based on .NET/Mono framework, which should make an heavy use of the shortest-path in a graph theories and I would like to use a native solution to traverse the nodes of the graph, instead of implementing surrogate solutions which would be hardly maintainable and would massively affect performances.

I've found an application which would be perfect for my scope: neo4j.

Unfortunately, this application is purely written in Java code and it's not portable to .NET, because of the massive differences between the two architectures.

Is anyone out there knows if is it there any port of neo4j or a similar solution for .NET?

Was it helpful?

Solution

Microsoft is also working on one - Trinity

Edit 1:
I just recently came across this repository. I haven't looked at the code or used it yet, but it has .NET interfaces for:

  1. BluePrints
  2. Rexster
  3. Pipes

These utilities can be used to connect with multiple Graph Databases including neo4j and OrientDB. For more information also look at TinkerPop.

OTHER TIPS

I'm surprised no one has mentioned Fallen-8, which is like the "Neo4J" for the .NET platform (open source too).

Since Neo4j started to get REST support things have evolved a bit, there's now two different .Net REST clients in the works:

BrightstarDB from Codeplex. BrightstarDB is an open source, fast, embeddable, and scalable NoSQL database for the .NET platform with code-first data model generation.

DEX high performance graph database has a dedicated .Net API so it may be of help to integrate it with your architecture. You can downlad it here

Now you can download and test for free the DEX graph database with .NET API released on July 2011 by Sparsity Technologies, at:

http://www.sparsity-technologies.com/dex_downloads

and How to build your 1st graph database with .NET ? Explained at Dzone:

http://architects.dzone.com/articles/how-build-your-first-net-graph

Rgds

Neo4Net on binpress may help.

this is not the same as Neo4Net on CodePlex suggested here by tester

I'm surprised no one has mentioned QuickGraph, a very mature and feature packed graph library for NET. It has multiple graph representations and plenty of algorithms.

http://quickgraph.codeplex.com/

The only thing available right now are bindings for Clojure, JRuby, Jython and Python. However, probably the JRuby REST API to Neo4j, http://github.com/andreasronge/neo4j/tree/2840b4c3d58e0250fdc31b63b11ac941ea944ba6/test/rest, would be the best bet for now.

This is a fairly old question, but as I stumbled upon it I suppose others will too.

There is a client for .Net and Neo4j http://hg.readify.net/neo4jclient/wiki/Home

and an API for Cypher http://mtranter.com/2013/09/21/cypher-net-a-neo4j-cypher-api/

Found this link on the Neo4j mailing list this morning (I think, I can't seem to find it again):

http://www.thewebsemantic.com/2010/06/03/neo4j-on-net-3-5/

It essentially let's you compile java to .net and then you can just reference the newly created assembly.

Haven't tried it yet but I am planning on it soon.

Neo4Net is also under development: http://neo4net.codeplex.com/

The guys at http://www.webling.com are also working on a native .NET graph database to power their Web Apps. I don't think it's released publicly yet, but it looks like it's got momentum.

They have named it CloudGraph and it will be launched at http://www.cloudgraph.com.

Please, look at the new .net version of DEX in www.sparsity-technologies.com .

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top