.Net Core配置與自動(dòng)更新的實(shí)現(xiàn)方法
.Net Core 將之前Web.Config中的配置遷移到了appsettings.json文件中,并使用ConfigurationBuilder來讀取這個(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)類型
可以直接使用強(qiáng)類型,把配置文件轉(zhuǎn)換成你的對(duì)象直接使用,只要對(duì)象的屬性與配置中一一對(duì)應(yīng)即可。
services.Configure<DatabaseOption>(configuration.GetSection("Database"));
然后在來在構(gòu)造函數(shù)中注入
public EntityFrameWorkConfigure(IOptions<DatabaseOption> dataBaseOption)
{
_dataBaseOption = dataBaseOption;
}
注意:IOptions<T>是單例的,即當(dāng)你修改了appsettings.json也不會(huì)改變它的值,這樣一定要重啟你的程序才會(huì)更新。
使用IOptionsSnapshot<T>自動(dòng)更新
如果你希望在使用強(qiáng)類型的時(shí)候,也可以自動(dòng)更新你的配置而不用重啟程序,你可以使用IOptionsSnapshot<T>
public EntityFrameWorkConfigure(IOptionsSnapshot<DatabaseOption> dataBaseOption)
{
_dataBaseOption = dataBaseOption;
}
以上這篇.Net Core配置與自動(dòng)更新的實(shí)現(xiàn)方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
.NET中l(wèi)ambda表達(dá)式合并問題及解決方法
這篇文章主要介紹了.net?lambda表達(dá)式合并問題,解決方法是自己構(gòu)造一個(gè)新的表達(dá)式,構(gòu)造表達(dá)式需要用到expression類,本文結(jié)合實(shí)例代碼給大家詳細(xì)介紹,需要的朋友可以參考下2022-10-10
asp.net 擴(kuò)展GridView 增加單選按鈕列的代碼
asp.net 擴(kuò)展GridView 增加單選按鈕列的代碼2010-02-02
.NET之后臺(tái)用戶權(quán)限管理實(shí)現(xiàn)
在功能性比較強(qiáng)大的后臺(tái)管理網(wǎng)站處于各種角度考慮多有應(yīng)用權(quán)限管理功能。以公司內(nèi)部管理系統(tǒng)為例,管理員根據(jù)不同員工所在不同部門賦予其不同權(quán)限,或者根據(jù)上下級(jí)隸屬關(guān)系實(shí)現(xiàn)“金字塔”管理。本文內(nèi)容有不盡不實(shí)之處懇請(qǐng)指正。2013-02-02
ASP.NET頁面請(qǐng)求超時(shí)時(shí)間設(shè)置多種方法
這篇文章主要為大家詳細(xì)介紹了ASP.NET頁面請(qǐng)求超時(shí)時(shí)間設(shè)置Server.ScriptTimeOut executionTimeout多種方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-09-09
asp.net core新特性之TagHelper標(biāo)簽助手
這篇文章主要為大家詳細(xì)介紹了asp.net core新特性之TagHelper標(biāo)簽助手的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07
ASP.NET讓FileUpload控件支持瀏覽自動(dòng)上傳功能的解決方法
這篇文章主要介紹了ASP.NET讓FileUpload控件支持瀏覽自動(dòng)上傳功能的解決方法,很實(shí)用的技巧,需要的朋友可以參考下2014-07-07

