Project Description

Dino is a simple ORM wrapper framework that provides a consistent set of interfaces for working with a variety of ORMs in a single Unit of Work. Dino is extremely lightweight, with built in support for abstracting away some of the intricacies of using various ORMs. Dino increases the maintainability, testability, and readability, of your applications by easily identifying the separation of concerns between your application and your ORM. Dino also increases the flexibility of your projects by creating a loose coupling to your ORM allowing you to easily change your ORM selection to another with minimal effort.

The Dino is designed to be easily extendable to provide ease of use for a wide variety of ORMs.

Use Nuget?  - Dino is also available via NuGet.  http://nuget.org/Packages/Dino  it is recommended to use NuGet to get Dino to ease your upgrade path as new builds are released.

PM> Install-Package Dino

Dino.EntityFramework is also available via Nuget.  https://nuget.org/packages/Dino.EntityFramework

PM> Install-Package Dino.EntityFramework

 

NOTE: Breaking changes in Release 2.0

Created a new Fluent Configuration for the UnitOfWork to register contexts within the unit of work. Refer to the project Documentation for more fluent configuration details.

Pre-2.0 Way

var unitOfWork = new UnitOfWork();
unitOfWork.Add<MyContext>(() => new MyContext());

Release 2.0

var unitOfWork = UnitOfWork.Configure(c => c.WithContext<MyContext>(c => new MyContext())).Initialize();


Project Roadmap

Current Extension Packages:

  • Dino.EntityFramework

Current Planned Extension Packages:

  • Dino.NHibernate


Last edited Aug 20, 2012 at 2:38 PM by amiller, version 15