Source Code is available at:

GitHub EasyLOB 3.X
GitHub EasyLOB 2.X
GitHub EasyLOB 1.X

Wikis area available at:

GitHub EasyLOB 3.X
GitHub EasyLOB 2.X
GitHub EasyLOB 1.X

NuGet package is available at:

EasyLOB 3 NuGet

Posts Index is available at Index

What is EasyLOB 3.X?

EasyLOB 3 is the new version of EasyLOB. The main changes are internal looking for stability, performance and simplification. There are just some minor changes in Presentation Layer.

  • Presentation Layer
    • EasyLOB CSS was optimized and 100% moved to Data and View Profile ( .cshtml files do not need any direct customization for CSS )
    • EasyLOB JavaScript code was optimized
    • Dependency Injection was completely moved to DIHelper, allowing change the DI Container Library ( currently only Unity )
  • Data Layer
    • DataModel: Data Profile defined by Data Annotations and OnSetupProfile method
    • ViewModel: View Profile defined by OnSetupProfile method
  • AutoMapper
    • Migrated to AutoMapper Library, to convert Data Models, DTOs and View Models
  • DTOs
    • Inspired by CQRS, DTOs is not used ( but are still available if desired ) anymore for MVC, just Data Models and View Models

GitHub Repositories 3.X

What is EasyLOB 2.X?

EasyLOB 2 is the new version of EasyLOB, first released 6 month ago. Despite of some important changes in lower layers the main changes in this version are related to Presentation Layer.

  • Presentation Layer
    • ASP.NET Applications without AJAX are deprecated
    • RDL Reports area created using Visual Studio SSDT Projects
    • A single “CRUD.cshtml” partial view is used instead od one for each CRUD operation
    • Controllers code was refactored and optimized
    • Authentication Views and Controller were customized
    • EasyLOB JavaScript code was optimized
    • EasyLOB CSS was optimized
    • Dependency Injection was optimized using an Http per Request Lifetime Manager
  • EasyLOB Generator
    • A Windows Forms based Solution Generator is available to create a new EasyLOB Solution from a MyLOB Template Solution.
    • Now you get a new EasyLOB solution in less than 10 seconds, just follow the EasyLOB Generator Tutorial !

  • Data Profiles
    • Data Layer includes now the new “Profile” classes to define what is shown in Collection and Item views. It works like a central Data Dictionary and is used to avoid customizing Collection and Item Views.
  • Multi-Tenancy
    • Multi-Tenancy is possible using sub-domains to define the current Tenancy. You may use a single Security database and many different application databases: one for each Tenant

GitHub Repositories 2.X

What is EasyLOB 1.X ?

EasyLOB is a Data-Driven Design Archetype for developing Web based .NET Line of Business (LOB) Applications. An Archetype is a set of Libraries, Design Patterns, Design Practices, Code Generation Scripts and Guidelines. The goal is to build LOB Applications without worrying about “code plumbing”: let EasyLOB take care of most of it for you and leave more time to worry about the real Business problems.

EasyLOB has many of the features necessary to build an ASP.NET MVC LOB Application and related Services:

  • Paradigms
    • Layered Architecture: Presentation, Service, Application, Persistence and Core
    • Data-Driven (Database First) Code Generation with CodeSmith (Commercial) Software (Free) scripts
  • Presentation Layer
    • Applications
    • ASP.NET Web API Client
    • ASP.NET Web API OData Client
    • Console Application
    • ASP.NET MVC Applications using Syncfusion (Free) Components Library
    • Dashboards using Syncfusion (Free, but using a commercial Dashboards Server) Components Library or PowerBI (Commercial)
    • RDL and RDLC (SQL Server Reporting Services) Reports using Syncfusion (Free) Components Library
    • Dependency Injection using Unity (Free) Library
    • Examples for Excel Files IO using Syncfusion (Free) Library
    • Examples for Text Files IO using FileHelpers (Free) Library
  • Service Layer
    • Applications
    • ASP.NET Web API OData, including a Persistence OData Layer
    • ASP.NET Web Service
    • Windows Service
    • Jobs using Hangfire (Free) Library
    • Dependency Injection using Unity (Free) Library
  • Application Layer
    • Generic SCRUD Repository with Data Model/DTO conversion, Transactions and Audit Trail
  • Persistence Layer
    • Models:
    • Data Models
    • DTOs – Data Transfer Objects
    • View Models (Presentation Layer)
    • Unit of Work and Generic Repository Design Pattern
    • ORM SQL Databases Persistence with:
    • Entity Framework
    • NHibernate
    • Micro ORM SQL Databases Persistence with:
    • LINQ to DB
    • NoSQL Databases Persistence with:
    • MongoDB
    • RavenDB
    • Redis
    • OData (ASP.NET Web API)
  • Application Core
    • Audit Trail
    • Log using NLog (Free) Library
    • Security
    • Authentication using ASP.NET Identity
    • Authorization using Activity Based Authorization
  • EasyLOB Core
    • EasyLOB
    • EasyLOB Extensions
    • EDM for File Attachments
    • INI Files
    • Mail

GitHub Repositories 1.X

Syncfusion is a Commercial Software, with a Community Version for a specific Customer scenario.

CodeSmith is a Commercial Software, but EasyLOB Libraries do not depend on it: it’s just used to generate much, much faster, most of the source code.