五種讀取方式
- 五種讀取方式依賴于 IConfiguration 和 IConfigurationRoot 物件
一、初級寫法
//不區分大小寫
string connectionString = _configuration["ConnectionString"];
二、系結配置模型
var config = new Config01(); _configuration.Bind(config);
三、部分系結
// webSetting為config的子物件
var webSetting = new WebSetting(); _configuration.GetSection("WebSetting").Bind(webSetting);
四、注冊配置選項的服務
//注冊完成后,在其他地方就可以通過依賴注入的方式使用了,通過一個 Options<> 物件獲取配置 , opt.Value.xxx services.Configure<Config01>(_configuration);五、通過IConfigurationRoot讀取自定義組態檔(appsettings.json為系統默認的)
先獲取IConfigurationRoot物件,剩下的操作同前四,未解之謎
如果讀取不同環境的組態檔??????
即對 appsettings.Development.json 、 appsettings.Production.json 的讀取 已知默認情況下Development與Production的優先級均大于appsettings.json,根據這個特性可以將公共配置存盤在appsettings.json- 開發環境可通過修改環境變數
- 生產環境通過修改Web.Config
<aspNetCore processPath="dotnet" arguments=".\FanjqOneSln.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="inprocess" > <environmentVariables> <environmentVariable name="ASPNETCORE_ENVIRONMENT" value=https://www.cnblogs.com/sunpan/archive/2021/01/07/"Development" /> </environmentVariables> </aspNetCore>
或者在發布前修改FolderProfile.pubxml檔案
<PropertyGroup> <EnvironmentName>Development</EnvironmentName> </PropertyGroup>
按照讀取自定義組態檔的方式讀取了多個組態檔???
目前所知:后來者居上IConfiguration
可以通過構造注入的方式獲得
private IConfiguration _configuration; public Startup(IConfiguration configuration) { _configuration = configuration; }構造注入
IConfigurationRoot
IConfigurationRoot是IConfiguration的一個子介面,一般用于讀取自定義組態檔,也可用于讀取AspNet Core的默認組態檔,但有點畫蛇添足,通過ConfigurationBuilder可以獲得IConfigurationRoot的實體
IConfigurationRoot root = new ConfigurationBuilder().AddJsonFile("").Build(); 用法和IConfiguration物件基本一致
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/245908.html
標籤:.NET技术
上一篇:循序漸進VUE+Element 前端應用開發(33)--- 郵件引數配置和模板郵件發送處理
下一篇:GridView自定義分頁
