ASP.NET MVC4 C#应用程序web.config包含类似
的设置<configuration>
<appSettings>
<add key="DefaultDataBase"
value="db1"/>
..
方法
public static string DefaultDataBase
{
get
{
return WebConfigurationManager.AppSettings["DefaultDataBase"] ?? "mydefault";
}
}
用于在代码中获取它。 如果web.config意外包含重复键,如
<configuration>
<appSettings>
<add key="DefaultDataBase"
value="db1"/>
<add key="DefaultDataBase"
value="db2"/>
..
此代码默默地重新生成错误的值db2
如何检测重复键并在重复项上抛出ApplicationException?
答案 0 :(得分:0)
使用AppSettings属性是不可能的。它只是一个普通的字典,当你在已经有一些数据的密钥中设置数据时,这个数据就会被替换掉。
您可以通过使用例如XmlReader(或其他技术)阅读web.config xml来检查重复项。但这不是常见的机制,因为配置文件应该由“负责任的”人员改变。