ConfigurationManager - 获取节组内的节

Tob*_*eil 3 .net c# app-config

我正在尝试做一些非常简单的事情:读取属于我的 App.config 文件中节组一部分的节的内容。

这应该很容易——对吧?

结果我已经尝试这样做一个小时了,大量的谷歌搜索和调试,但我就是做不到。当我使用 时ConfigurationManager.GetSection,它返回null- 仅当所需部分不属于部分组时才有效。

到目前为止我发现的只是Microsoft 的这个页面,它建议我自己解析 XML。严重地!?!?

我希望有人可以帮助我,因为现在这让我想在 5 分钟内将其与 YAML 一起破解,并且将来不再使用 .NET。

小智 5

我知道这个问题很老了,但我想提交正确的答案。

当您尝试从项目的 App.config 或 Web.config 中的某个部分读取值但该部分位于部分组内时,您可以按照上一个答案中所述作为键/值对访问这些值。但是,您不能只传递节名称,而是必须传递格式为 {SectionGroupName}/{SectionName} 的字符串,如下所示:

var section = (NameValueCollection)ConfigurationManager.GetSection("SectionGroupName/SectionName");
var value = section["key"];
Run Code Online (Sandbox Code Playgroud)