.Net Core配置與自動(dòng)更新的實(shí)現(xiàn)方法
.Net Core 將之前Web.Config中的配置遷移到了appsettings.json文件中,并使用ConfigurationBuilder來(lái)讀取這個(gè)配置文件。并可設(shè)置在配置文件變化以后,自動(dòng)重新加載,這樣可不用重啟你的程序。
var builder = new ConfigurationBuilder() .SetBasePath(env.ContentRootPath) .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true) .AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true) .AddEnvironmentVariables();
配置信息讀取
配置的讀取要比以前方便很多,直接使用。在ConfigurationBuilder調(diào)用Build()方法以后,就可直接取值:
Configuration = builder.Build(); var value = Configuration["Section:Key"]
當(dāng)配置更新以后,使用Configuration["Section:Key"]得到的也是最新的值。
配置強(qiáng)類(lèi)型
可以直接使用強(qiáng)類(lèi)型,把配置文件轉(zhuǎn)換成你的對(duì)象直接使用,只要對(duì)象的屬性與配置中一一對(duì)應(yīng)即可。
services.Configure<DatabaseOption>(configuration.GetSection("Database"));
然后在來(lái)在構(gòu)造函數(shù)中注入
public EntityFrameWorkConfigure(IOptions<DatabaseOption> dataBaseOption) { _dataBaseOption = dataBaseOption; }
注意:IOptions<T>是單例的,即當(dāng)你修改了appsettings.json也不會(huì)改變它的值,這樣一定要重啟你的程序才會(huì)更新。
使用IOptionsSnapshot<T>自動(dòng)更新
如果你希望在使用強(qiáng)類(lèi)型的時(shí)候,也可以自動(dòng)更新你的配置而不用重啟程序,你可以使用IOptionsSnapshot<T>
public EntityFrameWorkConfigure(IOptionsSnapshot<DatabaseOption> dataBaseOption) { _dataBaseOption = dataBaseOption; }
以上這篇.Net Core配置與自動(dòng)更新的實(shí)現(xiàn)方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
ASP.NET2.0服務(wù)器控件之自定義狀態(tài)管理
ASP.NET2.0服務(wù)器控件之自定義狀態(tài)管理...2006-09-09.NET中如何將文本文件的內(nèi)容存儲(chǔ)到DataSet
大家在項(xiàng)目中比較多的會(huì)對(duì)文件進(jìn)行操作,例如文件的上傳下載,文件的壓縮和解壓等IO操作。而在.NET項(xiàng)目中較多的會(huì)使用DataSet,DataTable進(jìn)行數(shù)據(jù)的緩存。每一個(gè)DataSet都是一個(gè)或多個(gè)DataTable對(duì)象的集合,本文主要介紹的是如何將文本文件的內(nèi)容存儲(chǔ)到DataSet里去。2016-12-12設(shè)置DropDownList的當(dāng)前選項(xiàng)
2008-01-01封裝的一個(gè)asp.net驗(yàn)證碼類(lèi)
昨天在一個(gè)Q群上面群主發(fā)了一個(gè)用ASP.NET實(shí)現(xiàn)驗(yàn)證碼的demo,下載下來(lái)然后運(yùn)行正常,頁(yè)面上的img標(biāo)簽成功調(diào)用了一個(gè)一般處理程序并顯示了中文的驗(yàn)證碼圖片,雖然有點(diǎn)模糊,但是可見(jiàn)上面是四個(gè)中文,圖片背景為白色,背后有噪點(diǎn)線,邊框黑色。2010-12-12asp.net 中靜態(tài)方法和動(dòng)態(tài)方法調(diào)用的區(qū)別實(shí)例分析
動(dòng)態(tài)方法,在使用時(shí)需要先創(chuàng)建實(shí)例,才能調(diào)用實(shí)例方法,而靜態(tài)方法則不需要,直接使用即可。2013-06-06asp.net實(shí)現(xiàn)的DES加密解密操作示例
這篇文章主要介紹了asp.net實(shí)現(xiàn)的DES加密解密操作,結(jié)合具體實(shí)例形式分析了asp.net實(shí)現(xiàn)DES加密與解密算法的實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-07-07C# 添加圖片水印類(lèi)實(shí)現(xiàn)代碼
圖片水印類(lèi)實(shí)現(xiàn)代碼,需要的朋友可以參考下。2009-05-05.Net Core創(chuàng)建Api進(jìn)行文件上傳功能
這篇文章主要介紹了.Net Core創(chuàng)建Api進(jìn)行文件上傳,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-03-03asp.net實(shí)現(xiàn)圖片以二進(jìn)制流輸出的兩種方法
這篇文章主要介紹了asp.net實(shí)現(xiàn)圖片以二進(jìn)制流輸出的兩種方法,以簡(jiǎn)單實(shí)例形式分析了asp.net實(shí)現(xiàn)以二進(jìn)制流形式讀寫(xiě)圖片文件的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-12-12