前言
基於 .NET 8 的開源專案,主要使用 WebAPI + Blazor 支援多租戶和模組化設計,DDD構建。可以幫助我們輕鬆地搭建起一個功能完善的Web應用程式。除了幫助你快速構建應用程式之外,專案也可以當做學習資料。我們可以從中瞭解到多租戶、CQRS、DDD架構、雲部署、Docker容器化等等前沿技術。
專案簡介
dotnet-starter-kit 是一個基於 .NET 8 的開源專案,它採用了Clean Architecture原則,支援多租戶和模組化設計。此專案是一個開箱即用的解決方案,非常適合快速開發Web應用程式。
資料庫支援
- PostgreSQL
- MySQL
- MSSQL
- Oracle
專案技術棧
-
多租戶架構
-
CQRS (Command Query Responsibility Segregation)
-
DDD架構
-
清潔編碼標準
-
Terraform到AWS的雲部署
-
Docker概念
-
CI/CD管道和工作流
-
ASP.NET Core 8
-
Entity Framework Core 8
-
Blazor
-
MediatR (用於CQRS模式)
-
PostgreSQL (資料庫)
-
Redis (快取)
-
FluentValidation (資料驗證)
執行與部署
1、下載專案
git clone https://github.com/fullstackhero/dotnet-starter-kit.git
2、開啟專案
使用Visual Studio開啟 ./src/FSH.Starter.sln
檔案。
專案結構如下圖所示:
3、專案結構
啟動 FSH.Starter
解決方案,它包含以下三個專案:
- Aspire Dashboard(預設專案)
- Web API
- Blazor
4、修改連線字串
在 ./src/api/server/appsettings.Development.json
檔案中修改 DatabaseOptions
的 ConnectionString
字串連線。
5、啟動專案
分別啟動專案:
- Aspire Dashboard: 預設啟動,訪問地址
https://localhost:7200/
- Web API: 訪問地址
https://localhost:7000/swagger/index.html
- Blazor: 訪問地址
https://localhost:7100/
6、部署
- Docker: 專案支援Docker,方便容器化部署。
- AWS: 專案提供了部署到 AWS 的指南。
專案展示
專案地址
- Github https://github.com/fullstackhero/dotnet-starter-kit.git
- Gitee https://gitee.com/xie-bing/dotnet-starter-kit
最後
如果你覺得這篇文章對你有幫助,不妨點個贊支援一下!你的支援是我繼續分享知識的動力。如果有任何疑問或需要進一步的幫助,歡迎隨時留言。
也可以加入微信公眾號 [DotNet技術匠] 社群,與其他熱愛技術的同行一起交流心得,共同成長!