swd*_*don 7 configuration .net-core-2.1
我想按照使用嵌套字典来填充IConfiguration. 我目前的方法是这样的。
我有一本这样的字典:
var inMemConfig = new Dictionary<string, object>();
inMemConfig["section1"] = new Dictionary<string, string>();
inMemConfig["section2"] = new Dictionary<string, object>();
inMemConfig["deepNest"] = new Dictionary<string, object>();
// Excluding a cast below:
inMemConfig["deepNest"]["list"] = new List<Dictionary<string, string>>();
inMemConfig["deepNest"]["dict"] = new Dictionary<string string>();
Run Code Online (Sandbox Code Playgroud)
填充上面的字典后,我尝试使用ConfigurationBuilder如下所示。
var builder = new ConfigurationBuilder();
var configuration = builder.AddInMemoryCollection(inMemConfig).Build();
Run Code Online (Sandbox Code Playgroud)
这显然会给编译器错误,该错误inMemConfig需要为以下类型:IEnumerable<KeyValuePair<string, string>>。
是否不可能创建分层内存配置,如果是的话,非常感谢任何正确方向的指针。谢谢。
AlR*_*lRi 10
您可以使用冒号(“:”)作为分隔符来指示配置中的层次结构。例如:
var builder = new ConfigurationBuilder();
var configuration = builder.AddInMemoryCollection(new Dictionary<string, string> {
["deepNest:list"] = "some_nested_list_value",
["deepNest:dict"] = "some_nested_dict_value"
}).Build();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3028 次 |
| 最近记录: |