.NET ConfigurationManager app.config混淆
我有一个app.config文件,其中包含以下内容
我打算使用ConfigurationSettings类来读取它,但是已经弃用了。 这很简单易用。 现在我必须使用ConfigurationManager类,现在我有了这段代码来阅读它。
System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); IDictionary SnapInList = (IDictionary) config.GetSection("PowershellSnapIns");
但它不断出错。 我更改了app.config属性以复制到构建,但它一直接受它无法找到该文件。 例外情况说它正在寻找TestConsole.vshost.exe.config
。 vs2k8sp1现在是否会自动为您重命名app.config,如果是这样,我做错了什么? 当然,我不需要将app.config文件重命名为debug vhost。 我在发行版中知道它可能正在重命名为TestConsole.exe.config
。 出了什么问题? 这是代码错误的情况还是什么?
我是这样做的:
– 确保您的bin目录中有System
和System.Configuration.dll
可用。 您可以通过添加对两个dll的引用并将其copy local
属性设置为true
。
– 确保在App.Config
文件中,将copy local
attributes设置为false
。
– 使用以下方法:
public static string XMLCheck { get { var section =(Hashtable)ConfigurationManager.GetSection("PowershellSnapIns"); return (string)section["SnapIn1"]; } }
– XMLCheck
应返回“ WebAdministration
”
VS将app.config重命名为yourappname.exe,并将其与.exe一起放在bin目录中
你能否确认该文件与你的exe一起存在于bin目录中。