Skip to content
EasyLOB edited this page May 11, 2023 · 21 revisions

: EasyLOB 2 is DEPRECATED : EasyLOB 2 Wiki is available at EasyLOB 2 Wiki

: EasyLOB 1 is DEPRECATED : EasyLOB 1 Wiki is available at EasyLOB 1 Wiki

Contents

  1. EasyLOB 3
  2. GitHub Repositories
  3. Changes
  4. New Features

GitHub Repositories

EasyLOB 3

EasyLOB 3 is the new version of EasyLOB.
Most of the changes are "internal", looking for technology update, performance and stability.
Unfornunatelly the code is not 100% compatible with EasyLOB-2 and manual migration ( mostly, using Regular Expressions ) is necessary.

Changes

  • 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 ( Autofac or Unity )
  • Data Layer

    • DataModel: Data Profile defined by Data Annotations and OnSetupProfile method
    • ViewModel: View Profile defined by OnSetupProfile method

New Features

  • AutoMapper

    • Migrated to AutoMapper Library, to convert Data Models, DTOs and View Models
  • DTOs

    • Inspired by CQRS, DTOs are not used anymore for MVC, just Data Models and View Models ( But are still available if desired, and very usefull for APIs data transfer )
// Data

public abstract class ZViewBase<TEntityView, TEntity> : IZViewBase<TEntityView, TEntity>, IValidatableObject, IZValidatableObject
    where TEntityView : class, IZViewBase<TEntityView, TEntity>
    where TEntity : class, IZDataBase

public static partial class ZViewHelper<TEntityView, TEntity>
    where TEntityView : class, IZViewBase<TEntityView, TEntity>
    where TEntity : class, IZDataBase

public abstract class ZViewBase<TEntityView, TEntityDTO, TEntity> : IZViewBase<TEntityView, TEntityDTO, TEntity>, IValidatableObject, IZValidatableObject
    where TEntityView : class, IZViewBase<TEntityView, TEntityDTO, TEntity>
    where TEntityDTO : class, IZDTOBase<TEntityDTO, TEntity>
    where TEntity : class, IZDataBase

public static partial class ZViewHelper<TEntityView, TEntityDTO, TEntity>
    where TEntityView : class, IZViewBase<TEntityView, TEntityDTO, TEntity>
    where TEntityDTO : class, IZDTOBase<TEntityDTO, TEntity>
    where TEntity : class, IZDataBase

// Application

public class MyLOBGenericApplication<TEntity>
    : GenericApplication<TEntity>, IMyLOBGenericApplication<TEntity>
    where TEntity : class, IZDataBase

public class MyLOBGenericApplicationDTO<TEntityDTO, TEntity>
    : GenericApplicationDTO<TEntityDTO, TEntity>, IMyLOBGenericApplicationDTO<TEntityDTO, TEntity>
    where TEntityDTO : class, IZDTOBase<TEntityDTO, TEntity>
    where TEntity : class, IZDataBase

// Presentation

public class BaseApiControllerApplication<TEntity> : BaseApiController<TEntity>
    where TEntity : class, IZDataBase

public class BaseApiControllerApplicationDTO<TEntityDTO, TEntity> : BaseApiController<TEntity>
    where TEntityDTO : class, IZDTOBase<TEntityDTO, TEntity>
    where TEntity : class, IZDataBase
  • Environment

    • Created Environment.Desktop and Environment.Web Class Libraries
  • NuGet

MyLOB.Shell
    EasyLOB
    EasyLOB.AuditTrail
    EasyLOB.DIAutofac | EasyLOB.DIUnity
    EasyLOB.Environment.Desktop
    EasyLOB.Extensions.Edm
    EasyLOB.Extensions.Mail
    EasyLOB.Security
MyLOB.Mvc
    EasyLOB
    EasyLOB.AuditTrail
    EasyLOB.DIAutofac | EasyLOB.DIUnity
    EasyLOB.Environment.Web
    EasyLOB.Extensions.Edm
    EasyLOB.Extensions.Ini
    EasyLOB.Extensions.Mail
    EasyLOB.Security
MyLOB.WebApi
    EasyLOB
    EasyLOB.AuditTrail
    EasyLOB.DIAutofac | EasyLOB.DIUnity
    EasyLOB.Environment.Web
    EasyLOB.Extensions.Edm
    EasyLOB.Extensions.Mail
    EasyLOB.Security
MyLOB.Application
    EasyLOB
    EasyLOB.AuditTrail
    EasyLOB.Extensions.Mail
    EasyLOB.Security
MyLOB.PersistenceEntityFramework
    EasyLOB       
MyLOB.Data
    EasyLOB
MyLOB    
    EasyLOB
  • NuGet DEMO Projects

    • Created MyLOB-NuGet-3 and Northwind-NuGet-3 DEMO Project with EasyLOB NuGet Package
  • Syncfusion NuGet

    • Moved to Syncfusion NuGet package at NuGet

Clone this wiki locally