最近在寫 .Net Core 的東西遇到一些問題,想說就是筆記一下,讓自己記住一些事情,免得在跌坑,所以開啟這個系列 .NetCore 小筆記,這次遇到的問題是,我在專案中的 appsettings.json 長這樣
{
"Logging": {
"LogLevel": {
"Default": "Warning"
}
},
"AllowedHosts": "*",
"azure_blob_connectionstring": "DefaultEndpointsProtocol=https;AccountName=YOUR_ACCOUNT_NAME;AccountKey=YOUR_ACCOUNT_KEY;EndpointSuffix=core.windows.net",
"blobcontainer": "n2imageagent2020",
"uploadtoken": "your_token",
"errorimage": "https://upload.wikimedia.org/wikipedia/commons/thumb/5/57/Blue_Screen_of_Death.png/800px-Blue_Screen_of_Death.png",
"notfound": "https://upload.wikimedia.org/wikipedia/commons/thumb/a/ac/No_image_available.svg/600px-No_image_available.svg.png",
"projectsinfo": {
"PROJECT_NAME_WITH_UNLIMIT_TIME": 0,
"PROJECT_NAME_WITH_LIMIT_10_SECONDS": 10,
"SAMPLE1": 4
}
}
其實也很簡單,如果你要取得 uploadtoken 你只要
var token = Configuration.GetValue("your_token");
接下來,重點是我要取 projectsinfo 這 element ,看到有支援T ,想當然爾應該是 var projectsinfo = Configuration.GetValue<Dictionary<string,int>>("projectsinfo");
太天真了,真的是太天真了,怎麼取都是 null . 最後感謝同事 (Eleven) 測試後,原來要用 bind,Source 如下
var projectsinfo = new Dictionary();
Configuration.GetSection("projectsinfo").Bind(projectsinfo );
筆記一下,畢竟,只是用程式習慣寫下來就是死在莫名的地方,當然也有可能是我功力還不夠,自己筆記一下,也給之後有碰到的朋友。
--
The bug existed in all possible states.
Until I ran the code.
如果這篇文章有幫助到您幫我分享一下,讓我有寫下去的動力...