ABP VNext學習日記7
1.services.AddApplication<AppModule>()
解析:新增了所有AppModule模組中定義的全部服務。
2.app.InitializeApplication()
解析:完成初始化並啟動應用程式。
3.Autofac依賴注入框架
解析:提供了屬性注入和方法攔截等高階功能,這些功能是ABP執行高階應用程式框架功能所必需的。
4.ABP解決方案專案及依賴關係
解析:
5.Domain專案
解析:解決方案的領域層,它主要包含實體、集合根、領域服務、值型別、倉儲介面和解決方案的其它領域物件。
6.DbMigrator專案
解析:
[1]必要時建立資料庫[沒有資料庫時]
[2]應用未遷移的資料庫遷移
[3]初始化種子資料[當需要時]
7.HttpApi.Client.ConsoleTestApp專案
解析:它是一個用於演示客戶端代理用法的控制檯應用程式。
8.Web專案
解析:包含應用程式的使用者介面。如果使用ASP.NETCore MVC UI,它包括Razor頁面、javascript檔案、樣式檔案、圖片等。
9.Test專案
解析:
[1]Domain.Tests:用於測試領域層
[2]Application.Tests:用於測試應用層
[3]EntityFrameworkCore.Tests:用於測試EF Core配置與自定義倉儲
[4]Web.Tests:用於測試UI[適用於ASP.NET Core MVC UI]
[5]TestBase:所有測試專案的基礎[共享]專案
10.HttpApi.Client.ConsoleTestApp專案
解析:它是一個控制檯應用程式,不是自動化測試專案,它用於演示.Net應用程式中HTTP API的用法。
說明:測試專案是用於做整合測試。
11.IdentityServer專案
解析:用於其它專案的身份驗證伺服器。Web專案使用OpenId Connect身份驗證從IdentityServer獲取當前使用者的身份和訪問令牌,然後使用訪問令牌呼叫HTTP API伺服器。HTTP API伺服器使用bearer token從訪問令牌獲取宣告授權當前使用者。
12.HttpApi.Host專案
解析:該專案是一個承載解決方案API的應用程式,它有自己的appsettings.json檔案。
13.Home Module
解析:Home模組是一個可延遲載入的模組,它載入應用程式的根地址。
14.HttpApi.Host
解析:HttpApi.Host託管模組的HTTP API,它有自己的appsettings.json包含資料庫連線字串和其它配置。
15.Web.Host
解析:Web.Host託管模組的UI,它包含appsettings.json檔案,但是其中沒有資料庫連線字串,因為它不需要連線到資料庫,它主要呼叫遠端API伺服器和身份認證伺服器。
16.ICrudAppService常見CRUD方法
解析:GetAsync、GetListAsync、CreateAsync、UpdateAsync和DeleteAsync。
17.生成代理
解析:ABP CLI提供了generate-proxy命令為服務HTTP API生成客戶端代理簡化客戶端使用服務的成本。
18.固有的註冊型別
解析:
[1]模組類註冊為singleton
[2]MVC控制器[繼承Controller或AbpController]被註冊為transient
[3]MVC頁面模型[繼承PageModel或AbpPageModel]被註冊為transient
[4]MVC檢視元件[繼承ViewComponent或AbpViewComponent]被註冊為transient
[5]應用程式服務[實現IApplicationService介面或繼承ApplicationService類]註冊為transient
[6]儲存庫[實現IRepository介面]註冊為transient
[7]域服務[實現IDomainService介面]註冊為transient
19.Dependency特性
解析:
[1]Lifetime:註冊的生命週期包括Singleton、Transient或Scoped
[2]TryRegister:設定true則只註冊以前未註冊的服務。使用IServiceCollection的TryAdd…擴充套件方法
[3]ReplaceServices:設定true則替換之前已經註冊過的服務。使用IServiceCollection的Replace擴充套件方法
20.ABP本地化系統
解析:Install-Package Volo.Abp.Localization
21.測試專案類庫
解析:
[1]xunit:作為主測試框架
[2]Shoudly:作為斷言庫
[3]NSubstitute:作為模擬庫
22.ABP驗證基礎設施
解析:abp add-package Volo.Abp.FluentValidation
23.Hangfire後臺作業管理
解析:abp add-package Volo.Abp.BackgroundJobs.HangFire
24.Quartz後臺作業管理
解析:abp add-package Volo.Abp.BackgroundJobs.Quartz
25.Quartz後臺工作者管理
解析:abp add-package Volo.Abp.BackgroundWorkers.Quartz
相關文章
- ABP VNext學習日記8
- 學習abp vnext框架到精簡到我的Vop框架框架
- 學習日記-24/7/26
- 初識ABP vNext(8):ABP特徵管理特徵
- Abp vNext 依賴注入依賴注入
- Node.js學習日記7Node.js
- [Abp vNext 入坑分享] - 7.Automapper與validation的使用APP
- 初識ABP vNext(2):ABP啟動模板
- 初識ABP vNext(10):ABP設定管理
- [Abp vNext 原始碼分析] - 7. 許可權與驗證原始碼
- 初識ABP vNext(7):vue身份認證管理&租戶管理Vue
- 我和ABP vNext 的故事
- 初識ABP vNext(5):ABP擴充套件實體套件
- 原始碼解析-Abp vNext丨LocalEventBus原始碼
- ABP vNext 審計日誌獲取真實客戶端IP客戶端
- 初識ABP vNext(3):vue對接ABP基本思路Vue
- Abp Vnext Vue版本(Vben Admin5.0)Vue
- Abp vNext 模組載入機制
- OData WebAPI實踐-與ABP vNext整合WebAPI
- 初識ABP vNext(6):vue+ABP實現國際化Vue
- Abp vnext EFCore 實現動態上下文DbSet踩坑記
- 初識ABP vNext(9):ABP模組化開發-檔案管理
- Abp Vnext Vue3 的版本實現Vue
- 十一、Abp vNext 基礎篇丨測試
- (精華)2020年8月22日 ABP vNext DTO在應用層的使用
- 學習日記 - 9.11
- 學習日記-2024.9.9
- 學習日記-9.2
- 學習日記 - 2024.9.5
- 學習日記 - 2024.9.4
- 學習日記 - 2024.9.1
- Flutter學習日記Flutter
- JDBC學習日記JDBC
- 十、Abp vNext 基礎篇丨許可權
- ABP VNext從單體切換到微服務微服務
- [Abp vNext 入坑分享] - 6.完整接入swaggerSwagger
- [Abp vNext 原始碼分析] - 4. 工作單元原始碼
- Abp vNext 基礎篇丨分層架構架構