轉自 : https://www.cnblogs.com/sportsky/p/9400419.htmlhtml
序言git
使用.NET Core,團隊能夠更容易專一的在.net core上工做。好比核心類庫(如System.Collections)的更改仍然須要與.NET Framework相同的活力,可是ASP.NET Core或Entity Framework Core能夠更輕鬆地進行實質性更改,而不受向後兼容性的限制。.NET Core借鑑了.NET Framework的最佳實踐,並將軟件工程的最新進展結合在一塊兒。github
寒暄、扯淡已經完畢,,,下面是我最近時間對.Net Core整理的相關知識,以爲這些在項目中是最基礎且最會應用到的,,,,不喜歡扯理論,直接擼碼:數據庫
一、淺談Startup類json
二、自定義路由跨域
三、跨域設置app
四、自定義讀取配置文件信息函數
五、程序集批量依賴注入佈局
六、使用NLog寫入文件日誌學習
七、使用NLog寫入數據庫日誌
八、Nlog標籤解讀
1、淺談Startup類
在ASP.NET Core應用程序中,必須包含有Startup類,在主函數調用中,Startup類名能夠隨意命名,但一般使用系統默認的startup,能夠經過startup的構造函數進行依賴注入startup類中必須包含Configure方法同時能夠根據實際狀況添加ConfigureServices方法,這兩個方法均在應用程序運行時被調用。Startup 類的 執行順序:構造 -> configureServices ->configure
ConfigureServices方法:主要用於服務配置,好比依賴注入(DI)的配置,使用時該方法必須在Configure方法以前
Configure方法:用於應用程序響應HTTP請求,經過向IApplicationBuilder實例添加中間件組件來配置請求管道
2、自定義路由
在Startup類的Configure方法配置
3、跨域設置
在Startup類的ConfigureServices方法配置
其中「AppDomain」這個名字是自定義的,你們能夠根據本身的喜愛定義不一樣的名字,配置完成以後,在控制器上面添加[EnableCors("AppDomain")]特性便可,若是要實現全局的跨域設置,能夠在Configure方法裏面配置app.UseCors("AppDomain"),即能實現全局的跨域設置
4、自定義讀取配置文件信息
這裏是寫的一個公共方法去讀取配置文件appsettings.json
截圖看效果
5、程序集批量依賴注入
咱們都知道依賴注入主要是爲了方便解耦,解除應用程序之間的依賴關係,在我看來DI、IOC這二者差很少是同樣的,DI是從應用程序的角度而IOC是從容器的角度,它們主要是對同一件事情的不一樣角度的描述。然而,,,,,,當咱們項目業務比較多的時候,若是要實現多個業務的注入,一般方法是手動一個個的添加註入,這樣可能有點太繁瑣,因此就想到了利用反射實現批量注入,,,,,,
幫助類
在Startupl類的ConfigureServices方法中添加
調用(Ps:Core.BLL這個類庫裏面分別有一個接口IAccountService和一個類AccountService,AccountService類去繼承接口IAccountService並實現接口裏面的方法)
6、使用NLog寫入文件日誌
新建配置文件命名爲Nlog.config
在Startup類Configure方法中添加配置
寫入日誌到文件
7、使用NLog寫入數據庫日誌
添加依賴項:Microsoft.Extensions.Logging和NLog.Extensions.Logging
新建配置文件命名爲Nlog.config
同第六項代碼同樣,也是在Configure方法設置,寫入日誌到數據庫
8、Nlog標籤解讀
NLog的使用方式基本上和其它的Log庫差很少,用於輸出日誌的級別包括:Trace,Debug,Info,Warn,Error,Fatal
layouts 用來規定佈局樣式,語法「${屬性}」,能夠把上下文信息插入到日誌中,更多佈局渲染器可參考https://github.com/nlog/NLog/wiki/Layout%20Renderers
<rules>標籤
目前只整理了這些,後續會持續更新到這裏面,若有不合理的地方,請你們加以斧正,,,但願能和你們共同窗習、共同進步,,