ABP框架幾點說明:
一、什么是ABP
ABP是一個建立在最新的ASP.NET的MVC和Web API技術的應用框架。它可以很容易地使用依賴注入、日志記錄、驗證、異常處理、本地化等,也使用流行的框架和庫。
ABP實現N層架構(域、應用、基礎設施和表示層)和領域驅動設計(實體庫,倉儲,領域/應用服務、數據傳輸對象..)。還實現並提供了一個良好的基礎結構來實現諸如依賴注入的最佳實踐。
ABP創建你的項目啟動模板。它包括默認使用的大多數框架和庫。你也可以選擇單頁(AngularJS)或多頁(MVC)架構,EntityFramework或NHibernate作為ORM。
二、項目結構
ABP是一套非常優秀的web應用程序架構,適合用來搭建集中式架構的web應用程序。 整個Abp的Infrastructure是以Abp這個package為核心模塊(core)+15個模塊(module).其中13個依賴於Abp這個核心包,另外兩個包(FluentMigration,Web.Resources)相對獨立。 Abp.AutoMapper: 實現對象之間的自動映射。 Abp.EntityFramework:通過EntityFramework實現數據訪問層。 Abp.FluentMigrator :對FluentMigrator庫做了易用性擴展。 Abp.HangFire:集成了HangFire,用於實現后台工作任務。 Abp.MemoryDb:MemoryDB的數據訪問層 Abp.MongoDB:MongoDB的數據訪問層。這個模塊是個雞肋,實際項目中無法使用。原因后面會詳述。 Abp.NHibernate:通過NHibernate實現數據訪問層。 Abp.Owin:目前只有一個IAppBuilder的擴展方法,用來解決application啟動時候的AppDomain CultureInfo Leak問題。 關於這個Issue可以點擊這里。 Abp.RedisCache:Redis的數據訪問層 Abp.Web: 提供給ASP.Net web application 使用的模塊 Abp.Web.Api: 提供給ASP.Net web application Webapi使用的模塊 Abp.Web.Mvc: 提供給ASP.Net web application MVC 使用的模塊 Abp.Web.Api.Odata : 提供給ASP.Net web application Webapi Odata 使用的模塊 Abp.Web.SignalR : 集成SignalR Abp.Web.Resources:這個模塊中只有js和css代碼,是用來擴展angularjs或jquery的?
ABP直接實踐、
1、透過事物實體或本質,去了解概念,即不了解概念直接上手實踐
2、通過接觸相似的概念,去靠近,了解新框架 -概念有 它解決的問題,發揮的作用