原文地址:http://piotrgankiewicz.com/2017/04/17/asp-net-core-12-samples/
作者:Piotr Gankiewicz
翻譯:楊曉東(Savorboard)
前言
在今天的博客中,我將介紹十幾個可以在 ASP.NET Core 應用程序中使用的簡單示例。從最簡單的東西開始,比如 Options, 中間件,數據庫,甚至 Nginx 或者 Docker。
首先確定你已經執行過了 dotnet restore , 然后運行 dotnet run 來啟動應用程序,如果該示例正在使用比如像數據庫這樣的外部資源的話,請確保你已經安裝並且運行它。
#1. Options
我們先看一下 options 來熱個身,你可以很輕松的創建一個被叫做 XyzOptions 的類並且將其綁定到 appsettings.json 文件,來做一個配置的定義,並且通過注入 IOptions 來使用它的實例。
#2. 中間件
你可以通過將自己的 中間件 填加到整個流程中來擴展Http請求管道。如果你曾經使用過像NodeJS這樣的框架,並且想要使用自己的代碼來驗證或者處理傳入的請求,那么你也可以在 ASP.NET Core 中執行此操作。
#3. 過濾器
需要定制異常處理程序? 需要記錄傳入的請求或者驗證他們? 通過使用 過濾器 ,只需創建一個新 Attribute 並且在 MVC Controller 上使用他們就可以實現這些功能或者更多的一些功能。
#4. Autofac
在 ASP.NET Core 中,依賴注入和 IOC 容器已經是內置的框架,但是你仍然可以使用自己喜歡的庫來替換他們,比如你可以使用 Autofac 來幫助你提供更多依賴倒置原則方面的功能。
#5. Tests
我們都知道怎么樣編寫一個好的單元測試,但是真的是對的嗎? 那么集成測試(端到端)呢? 當然你可以公開你的 API 實例,並且通過 HTTP Client 來執行 HTTP 請求。 然而,有一個更好的辦法,你可以在內存中運行這樣的測試,感謝 TestHost 這個庫。
#6. SQL Server
你知道你可以在 Linux 上運行 SQL Server 了嗎? 不管怎么說,你可以比如使用 Entity Framework Core 庫通過 .NET Core 創建一個 SQL Server 實例, 但是,我更喜歡更加輕量級的解決方案,因此實例提供的代碼使用的是 Drapper。
#7. MongoDB
你喜歡使用像我用的這種 NOSQL 數據庫嗎? 你可以使用 MangoDB 驅動程序,並且從 .NET Core 應用程序連接到 MangoDB 數據庫。
#8. Redis
Redis 是一個強大的緩存功能的庫,而且你可以連接到 Redis 服務器,感謝 StackExchang 的開發人員創建了這樣一個偉大的庫。
#9. RabbitMQ
創建分布式系統常見方式之一是使用服務器總線。 RabbitMQ就是其中之一,你可以通過添加我喜歡的 官方庫 或者 RawRabbit
, 因為它的抽象和易用性,所以你可以很方便的使用它。
#10. Nancy
Nancy 是一個構建 HTTP API 令人驚奇的框架。我非常喜歡它,當我發現它於 ASP.NET Core 框架兼容時我感到很高興。
#11. Docker
一般來說,容器化的應用和容器是現在的行業標准。您可以輕松地使用 Docker 來構建您的 ASP.NET Core應用程序。
#12. Nginx
感謝 Kestrel HTTP Server,您不再需要使用IIS了。比如,您也可以在Linux服務器上選擇 Apache 或 Nginx 來托管 .NET Core 應用程序。
如上所述,你可以從 GitHub 中找到並下載所有的實例程序。
本文地址:http://www.cnblogs.com/savorboard/p/aspnetcore-samples.html
版權歸原作者所有