URF vNext (v3.4): ASP.NET 5 Web API and pure HTML5/AngularJS (in full TypeScript 1.5a) for the presentation layer (no Razor and MVC Controller), EF 7 - ETA: 6/2015

URF (Unit of Work & Repositories Framework) [lightweight fluent] with Sample Northwind ASP.NET MVC 5 Application

This framework minimizes the surface area of your ORM technology from disseminating in your application. This framework was deliberately designed to be lightweight, small in footprint size, and non-intimidating to extend and maintain. When we say lightweight we really mean lightweight, when using this framework with the Entity Framework provider there are only 10 classes. This lightweight framework will allow you to elegantly, unobtrusively, and easily patternize your applications and systems with Repository, Unit of Work, and Domain Driven Design. To use Generic Repositories or not? The framework allows the freedom of both, generic repositories and the ability to add in your own domain specific repository methods.

Live demo: longle.azurewebsites.net
Live demo is Continuous Integration & Continuous Deployment Site directly from this CodePlex repository.

Architecture Overview (Sample Northwind Application & Framework)

  1. UI (Presentation) Layer
    • ASP.NET MVC - (Sample app: Northwind.Web)
    • Kendo UI - (Sample app: Northwind.Web)
    • AngularJS - (Sample app: Northwind.Web)
  2. Service and Data Layer
    • Repository Pattern - Framework (Repository.Pattern, Repository.Pattern.Ef6, Northwind.Repository)
    • Unit of Work Pattern - Framework (Repository.Pattern, Repository.Pattern.EF6, Northwind.Repository)
    • Entity Framework
    • Service Pattern - Framework (Service.Pattern, Northwind.Service)
  3. Domain Driven Design (*slated for release v4.0.0)
    • Domain Events
    • *more to come

Technology Stack

Visual Studio 2013, Entity Framework 6, Sql Server 2014 / Sql Azure, Azure WebSite, ASP.NET MVC 5, AngularJS, Kendo UI, Angular Kendo, Web Api 2, OData, Entlib Unity

Subscribe to updates: @LeLong37

Project Sponsor

Last edited May 21 at 1:52 AM by lelong37, version 186