如何从 web.config 读取 system.web 部分
应该很简单,但无论我尝试什么都会返回 null:
const string key = "system.web";
var sectionTry1 = WebConfigurationManager.GetSection(key);
var sectionTry2 = ConfigurationManager.GetSection(key);
我确信我以前已经这样做过。
如果这有什么区别的话,我正在使用 MVC。
Should be simple, but whatever I try returns null:
const string key = "system.web";
var sectionTry1 = WebConfigurationManager.GetSection(key);
var sectionTry2 = ConfigurationManager.GetSection(key);
I'm sure I have done this before.
I am using MVC if this makes a difference.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
是个白痴 - system.web 不是一个配置部分,而是一个配置组。如果我将密钥更改为实际部分,那么两种方法都可以正常工作。这是使用 ConfigurationManager 的一个:
Was being an idiot - system.web is not a config section but a config group. If I change the key to an actual section, then both methods work fine. Here's the one using ConfigurationManager:
我认为访问 system.web 与访问 appSettings 略有不同。
试试这个:
您需要将您尝试访问的 system.web 的相关部分强制转换为特定类型。
I think accessing system.web is slightly different to accessing appSettings.
Try this:
You need to cast the relevant section of system.web you're trying to access to a particular type.
这对我有用:
This worked for me: