2020/01/26, ASP.NET Core 3.1, VS2019
摘要:基於ASP.NET Core 3.1 WebApi搭建后端多層網站架構
目錄
0-前言
網站內容
-
簡單的后台管理系統,擁有用戶登錄、角色管理、日志記錄的功能
-
支持MySQL、SQL server數據庫
-
泛型倉儲設計完善,不用每個實體單獨定義一個倉儲(也可以使用this自定義擴展或覆寫)
-
工作單元統一管理所有的倉儲,統一管理事務和提交
-
開發調試階段,開啟EntityFrameworkCore的日志,可以看到每次執行的具體sql,方便排查錯誤
-
NLog日志記錄根據日志等級自動過濾日志事件
-
NLog寫入數據庫的連接字符串自動與appsettings.json中的配置保持一致
-
實體類Id使用雪花算法生成
-
Castle.Core實現動態攔截器(AOP)對業務層的異常統一進行日志記錄
-
登錄驗證使用JWT
-
用依賴注入的方式使用AutoMapper
-
使用ResXManager插件對多語言資源文件進行管理維護
-
使用Obfuscar混淆加密保護代碼
技術介紹
-
主要采用ASP.NET Core 3.1(WebApi) 框架實現一個后台管理系統
-
EntityFrameworkCore 3.1做ORM工具,FluentAPI方式配置實體映射
-
NLog做日志記錄
-
Autofac配合Castle.Core實現動態攔截器(AOP)
-
JWT做登錄驗證
-
AutoMapper做映射工具
-
Postman做接口調試
實現目標
- 每一處代碼(每一個工具)盡量做到最佳實踐
- 完善的單元測試
- 每一章節都有對應的項目分支代碼

