ASP.NET讀取配置文件的多種方式詳解
ASP.NET Core項?默認的配置?件是appsettings.json,創(chuàng)建項?時就會?動?成這個文件,我們可以將?些配置信息存放在這個配置?件中,這樣做的好處是當我們修改配置?件 時,不在需要重啟應?,可以實現(xiàn)熱更新。
{ "Logging": { "LogLevel": { "Default": "Information", "Microsoft.AspNetCore": "Warning" } }, "AllowedHosts": "*", "msg": "hello world" }
IConfiguration
個路由終結(jié)點來演?如何讀取這個配置
app.MapGet("config", (IConfiguration configuration) => { return configuration["msg"] + "_" + configuration["Logging:LogLevel:Default"]; });
通過IOC注?IConfiguration對象,我們就可以訪問不同節(jié)點的配置了,如果是單層節(jié)點, 通過configuration[“msg”]的?式進?訪問,如果是多層級,則通過 configuration[“Logging:LogLevel:Default”]來訪問
通過GetValue方法獲取
app.MapGet("config", (IConfiguration configuration) => { return configuration.GetValue<string>("msg"); });
GetValue?法讀取對象,會報異常
通過GetSection方法獲取
app.MapGet("config", (IConfiguration configuration) => { return configuration.GetSection("msg").Value; });
讀取對象
app.MapGet("config", (IConfiguration configuration) => { return configuration.GetSection("Person").Get<Person>(); });
使用委托來配置選項
先定義?個實體:
public class Person { public string Name { get;set; } public int Age { get;set; } }
配置如下:
"Person": { "Name": "張三", "Age": 18 }
注冊配置:
builder.Services.Configure<Person> (builder.Configuration.GetSection("Person"));
使?配置:
app.MapGet("config", (IOptions<Person> options) => { return $"{options.Value.Name},{options.Value.Age}"; });
到此這篇關于ASP.NET讀取配置文件的多種方式詳解的文章就介紹到這了,更多相關ASP.NET讀取配置文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
asp.net Urlrewriter在虛擬主機上的使用方法
在網(wǎng)上看到,很多朋友在asp.net中做urlrewrite,用的是HttpHandle Server.Transfer的方法。其實這種方法是錯誤的。2009-12-12ASP.NET中UpdatePanel與jQuery同時使用所遇問題解決
在.NET中使用了UpdatePanel,里面的輸入框使用了jQuery的日歷選擇器,接下來介紹下兩者同時使用的一些細節(jié)及問題的解決方法,感興趣的各位可以參考下哈2013-03-03asp.ent下合并兩個結(jié)構(gòu)相同的DataTable
今天遇到了一個情況,就是從一張數(shù)據(jù)表中讀取幾個符合條件1的客戶的信息,然后再讀取幾個符合條件2的客戶的信息,最后顯示出來.因為前后兩次數(shù)據(jù)的客戶信息的結(jié)構(gòu)是完全相同的,所以干脆合并成一個DataTable再賦值給GridView好了.2010-02-02