CypherOGM.Build
1.0.0
Use Blueprint41.Build instead.
dotnet add package CypherOGM.Build --version 1.0.0
NuGet\Install-Package CypherOGM.Build -Version 1.0.0
<PackageReference Include="CypherOGM.Build" Version="1.0.0" />
paket add CypherOGM.Build --version 1.0.0
#r "nuget: CypherOGM.Build, 1.0.0"
// Install CypherOGM.Build as a Cake Addin #addin nuget:?package=CypherOGM.Build&version=1.0.0 // Install CypherOGM.Build as a Cake Tool #tool nuget:?package=CypherOGM.Build&version=1.0.0
*It's an extension of actual Blueprint41 library. Added features are listed below:
- Add Composite Unique Constraints for Node and Relationships
- Exposing Explicit Transaction Commit*
<div>
<div><img align="left" src="https://github.com/circles-arrows/blueprint41/assets/121929116/88c219d4-403b-4e98-81a6-f1f3055a0a33" alt="Blueprint41" width="180" height="180"></div>
<div align="right">
<div align="left"> </div>
<div align="left"><b> ✔️ Supports for Neo4j and Memgraph</b></div>
<div align="left"><b> ✔️ Works Visual Studio, Visual Studio Code and Rider</b></div>
<div align="left"><b> ✔️ Develop on Windows, macOS or Linux</b></div>
<div align="left"> </div>
<div align="left"><h1>Blueprint41</h1></div>
<div align="right">
<a href="https://www.nuget.org/packages/Blueprint4"><img alt="NuGet" src="https://img.shields.io/nuget/v/Blueprint41.svg"></a>
<a href="https://www.nuget.org/packages/Blueprint4"><img alt="downloads" src="https://img.shields.io/nuget/dt/Blueprint41"></a>
<img alt="repo size" src="https://img.shields.io/github/repo-size/circles-arrows/blueprint41">
<img alt="license" src="https://img.shields.io/github/license/circles-arrows/Blueprint41">
<a href="https://sonarcloud.io/summary/new_code?id=circles-arrows_blueprint41"><img alt="Quality Gate Status" src="https://sonarcloud.io/api/project_badges/measure?project=circles-arrows_blueprint41&metric=alert_status"></a>
</div>
</div>
</div>
.NET ORM for Neo4j and Memgraph Database
Simplify database operations through generated data access objects.
Frictionless Development with Intellisense
Neo4j Plugins (Optional)
To learn more, please visit Extension and Plugins.
Documentation
To learn more, please visit Blueprint41 wiki.
Connection
PersistenceProvider.CurrentPersistenceProvider = new Neo4JPersistenceProvider($"bolt://localhost:7687", $"neo4j", $"password");
Automated Deployment of Schema Upgrades
// Datastore defines the latest schema definition
Datastore model = new Datastore();
// Sync database schema with the latest upgrade scripts
model.Execute(true);
Type Safe Creation of Nodes and Relationships
using (Transaction.Begin())
{
Movie matrix = new Movie()
{
Title = "The Matrix",
Tagline = "Welcome to the Real World",
Released = new DateTime(1999, 3, 31)
};
Person keanu = new Person()
{
Name = "Keanu Reeves",
Born = new DateTime(1964, 9, 2)
};
Person lana = new Person()
{
Name = "Lana Wachowski",
Born = new DateTime(1961, 7, 30)
};
Person lilly = new Person()
{
Name = "Lilly Wachowski",
Born = new DateTime(1967, 12, 29)
};
// Creates relationship via Type-safe generated objects
movie.Actors.Add(keanu);
movie.Directors.Add(lana);
movie.Directors.Add(lilly);
movie.Genre.Add(Genre.Load(Genre.StaticData.Name.Action));
movie.Genre.Add(Genre.Load(Genre.StaticData.Name.Sci_Fi));
// Commits detected changes to database
Transaction.Commit();
}
Type Safe Querying of the Graph
using (Transaction.Begin())
{
// Get Movies of Keanu(Direct relationship)
Person keanu = Person.LoadByName("Keanu Reeves");
EntityCollection<Movie> movies = keanu.ActedIn; // Movies are retrieve here
// Get Director of Keanu(Spans multiple relationships)
var query = Transaction.CompiledQuery
.Match
(
Node.Person.Alias(out var director)
.In.PERSON_DIRECTED_MOVIE.Out.
Movie
.Out.PERSON_ACTED_IN_MOVIE.In.
Person.Alias(out var actor)
)
.Where(actor.Name == "Keanu Reeves")
.Return(director)
.Compile();
List<Person> directors = Person.LoadWhere(query);
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net8.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated | |
---|---|---|---|
1.0.0 | 134 | 4/8/2024 |