ASP.NET Core 5 EP 16:存取appsettings.json內的設定檔參數
前言
早在.NET Core時代,appsetting.json就已經取代web.config這玩意兒了,除了時代進步的理由外,XML的退流行、Json的大舉興起也是很重要的因素之一。
存取appsettings.json
步驟1:打開appsetting.json,增加用於範例的資料庫連線設定參數,如下DatabaseConnection部分:
{
"Logging": {
"LogLevel": {
"Default": "Trace",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
"AllowedHosts": "*",
"DatabaseConnection": {
"MssqlConnection": "Persist Security Info=False;User ID=*****;Password=*****;Initial Catalog=AdventureWorks;Server=MySqlServer",
"OracleConnextion": "Driver={Microsoft ODBC for Oracle};Server=MyOracleServer;Uid=*****;Pwd=*****;"
}
}
步驟2:宣告一個ConfigurationBuilder方法,用來載入appsetting.json檔案。
public static IConfigurationBuilder Getbuilder()
{
var builder = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json");
return builder;
}
步驟3:在函式或任何需要用到設定檔的地方宣告Getbuilder()這個方法,並取得設定參數。
public string GetMsSqlConnectionString()
{
string strConnString = string.Empty;
strConnString = Getbuilder().Build().GetValue<string>("DatabaseConnection:MssqlConnection");
return strConnString;
}
可以發現,”DatabaseConnection:MssqlConnection”,以冒號(:)作為階層的分隔,如果還有下一個階層,就再加冒號與設定參數的名稱即可。
~ END ~