If .NET is your language of choice, the most popular drivers are:

These drivers are shipped exclusively as a NuGet package. To use them in your projects, you will need to use the Package Manager Console.

About connection parameters

We've used test credentials for all the following examples. Please replace them with your real connection parameters.

You'll find all the required information to connect to your database on our admin panel if you navigate to the Connection section. More on connecting to your database here

Neo4j Bolt driver for .NET

The Neo4j .NET driver is the one officially supported by Neo4j and connects to the database using Bolt protocol (HTTP/HTTPS not available).

Bolt protocol is available in 3.0.0 or higher versions of Neo4j. You can check your Neo4j version if you navigate to the Overview page of your database.

Please be aware that older versions of this driver are incompatible with GrapheneDB

Older versions of this driver use TLS 1.0, which GrapheneDB does not support, as it is susceptible to attacks and can be a tremendous security liability.

TLS 1.2 is supported by this driver starting with version 1.1.0

Driver page: https://github.com/neo4j/neo4j-dotnet-driver
Driver NuGet package: https://www.nuget.org/packages/Neo4j.Driver

To install the .NET Neo4j Driver, run the following command in the Package Manager Console:

PM> Install-Package Neo4j.Driver

The following example just sets up the connection and creates a dummy node:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Neo4j.Driver.V1;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            var driver = GraphDatabase.Driver("bolt://hobby-geefdaeefcom.dbs.graphenedb.com:24786", AuthTokens.Basic("v303", "GtGq5rldxu"), Config.Builder.WithEncryptionLevel(EncryptionLevel.Encrypted).ToConfig());
          
            var session = driver.Session();
            using (var tx = session.BeginTransaction())
            {
                tx.Run("CREATE (n:Person {name:'Bob'})");
                tx.Success();
            }
        }
    }
}

Neo4jClient

A .NET client for Neo4j, designed to make it easy to write Cypher queries in C# with IntelliSense.

Please note

This driver does not support Bolt connections at the time of writing this guide. The maintainers of this driver have stated Bolt support is coming soon. Please check on the status of Bolt support prior to connecting to GrapheneDB, if you wish to use Bolt.

Driver page: https://github.com/Readify/Neo4jClient
Driver NuGet package: https://www.nuget.org/packages/Neo4jClient

To install Neo4jClient, run the following command in the Package Manager Console:

PM> Install-Package Neo4jClient

Setting up the connection:

var client = new GraphClient(new Uri("http://v303:GtGq5rldxu@hobby-geefdaeefcom.dbs.graphenedb.com:24786"));
client.Connect();

Assuming a Person class:

public class Person
{
    public string Name { get; set; }
}

Print the existing Person’s node names:

var query = client.Cypher
    .Match("(person:Person)")
    .Return(person => person.As<User>())


foreach (var result in query.Results)
{
    Console.WriteLine(result.Person.Name);
}

.NET