NorthBreeze NHibernate demo

Northbreeze is a simple data-entry demo application that uses the Northwind data model. This sample demonstrates how to use Breeze with NHibernate on the server, and Breeze with AngularJS on the client.

Client side

NorthBreeze uses an AngularJS custom directive to apply Bootstrap styles to show validation errors detected by Breeze.

Server side

  • Breeze HTTP filters and persistence context
  • NHibernate
  • Northwind data model

NorthBreeze uses metadata provided by NHibernate on the server to control validation on the client. It saves changes through NHibernate by updating the server-side entity model and persisting it to the database. It supports OData queries using NHibernate’s IQueryable implementation.


Download the sample. It’s a zip file containing a Visual Studio 2012 solution that includes the NorthwindIB.sdf database. When you first build it, it will pull in Web API and Breeze dependencies via NuGet. You can also check out the source code on GitHub.

Screen Shots

Edit Customer

This shows the customer screen with its paged data grid and editing fields. Here we’re editing a customer and we have a validation error.


This shows the home screen, which has a list of all the entities that have changed. For each changed entity, it shows the type, ID, and all the fields that have changed, including any validation errors as a result of those changes.

No, this is not something you would have in a real application, but it demonstrates how Breeze tracks changes.