與API入門者的大火! ? (.NET 7)?
這是一個起動器項目 /模板,它由jullazor前端和ASP.NET核心後端組成。此模板中的Blazor應用程序是從ASP.NET Core Server提供的。
運行此解決方案時,如果您在Visual Studio中運行此問題,請將服務器項目設置為啟動項目,或者通過VS代碼運行此服務器,請cd到服務器項目文件夾中,並運行dotnet run
順便提一句!可以完全自由地訂購此倉庫,然後重新將其重新構建以創建您自己的入門器❤️,例如將EF Core換成Dapper或您喜歡的任何其他ORM或數據訪問庫。
您需要運行這個入門項目需要什麼?
- NET 7 SDK(https://dotnet.microsoft.com/en-us/download/dotnet/7.0)
- VS代碼或Visual Studio 2022(當前最新,請隨時使用預覽,但是我只在當前對此進行了測試)
- 應該能夠在Windows/Mac/linux上運行(我尚未對此進行測試,只是從.NET 7的跨平台功能中運行),如果不是,請讓我知道,因為可能會有我缺少的設置或愚蠢的配置。
一眼就包含:
- 一家極樂客戶(包含默認的大風項目零件減去Weatherapi位)
- ASP.NET Core Server(API)
- 共享項目(用於在前端和後端之間共享代碼和服務)
- 測試項目客戶,服務器和共享
那是什麼配置?
- 所有項目都針對.NET 7
- 所有測試項目均配置為使用XUNIT並包含用於模擬依賴性的MOQ。
- Blazor測試項目具有用於測試頁面和組件的Bunit
- 服務器測試項目包含一個固定裝置,該固定裝置可創建內存實體框架核心7數據庫(請參閱服務器測試的inmemorydbtests.cs文件中的示例),這將使您能夠在不使用物理DB的情況下進行測試!
- 客戶端項目的示例是鍵入的HTTP-CLIENT,可以將其註入組件和頁面中。
- 服務器項目的示例:
- 控制器
- 服務
- 中間軟件
- dbContext(EF Core 7),該DBContext(EF Core 7)與sqlite db綁定為示例。
- 使用汽車應用程序
一目了然的技術 /廁所。
- 實體框架核心7
- 量
- 汽車應用程序
- FluentValidation&Blazored.Fluentvalidation(我什至做出了貢獻:D,FluentValidation是我更喜歡交換標準System.com.ponentmodel.dataannotations Decorator)
- 布尼特
- Xunit
- system.text.json
- Microsoft.extensions.http(用於在IHTTPCLIENTFACTORY中配置HTTPCLIENT和HTTPMESSAGEHANDLER,對我來說,這提供了nice Services.ADDHTTPCLIENT方法,用於將httpclients添加到di i i in in Client/program.cs startup啟動)