What is nHydrate?

nHydrate is a mature, open source object-relational mapper for the Entity Framework Core. It is not a replacement for EF or a custom ORM. It is Entity Framework. The platform adds a modeling layer to EF that can be used to visualize and add custom code and extensions. The artifacts are a code-first .NET standard library that can be deployed on multiple platforms.

The integrated modeler in Visual Studio

Evolutionary Database Design

nHydrate allows you to model and generate your application framework without having to worry too much about database updates. This is a major issue for developers who have production systems. Product managers constantly want to add features and enhance functionality. More often than not, this requires database changes. By modeling your application with nHydrate, you get advanced database migration. Each time you generate a model, the database change scripts are automatically created. There is an installation project that allows you to update any database version to the latest version. All databases are versioned. You can view the database version and last update date directly from SQL Management Studio. Of course you can always add custom database scripts to any step of the upgrade process. The entire framework allows you to upgrade production systems to your latest developments quickly and seamlessly.

These concepts are derived directly from the Martin Fowler site. Many of his concepts and patterns are baked directly into the nHydrate platform.

Entity Framework is a fantastic platform to get up and running quickly. It allows you design a code first model and have the database follow from it. However there are many hidden conventions that might be confusing. Also the conventions can be overridden by code attributes, which can themselves be overridden by Fluent syntax. The nHydrate platform clears up the ambiguity of these three distinct modeling paradigms and provides a visual, model driven approach.

Entity Framework Core

nHydrate now focuses exclusively on EF Core. Previous versions supported EF 4.x – 6.x versions of Entity Framework. With a wider range of functionality, the more compromises that must be made. EF Core has multi-database support as well as multi-platform support, so we have made a clean break to focus on this platform. The legacy version can be downloaded from here.

Multi-Tenancy

Read about how to create a multi-tenant application with Entity Framework.

Downloads

The latest version is available in the Visual Studio Gallery. It can be downloaded directly or inside of Visual Studio. From the Tools|Extensions menu dialog, search and install “nHydrate”. This will also keep the extension up to date.

Source Code

The source code is available on Github.com. Also there is an active WIKI that can be used for facts and tips.

Questions or comments contact feedback@nhydrate.org