如何防止重复的应用设置在 web.config.

本文关键字:设置 web config 应用 何防止 | 更新日期: 2023-09-27 18:34:24

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

如何检测重复键并在重复项上抛出应用程序异常?

如何防止重复的应用设置在 web.config.

无法使用 AppSettings 属性。它只是一个普通的字典,当您在键中设置已经有一些数据的数据时,这些数据将被替换。

您可以通过读取 web.config xml 来检查重复项,例如使用 XmlReader(或其他技术)。但这不是常见的机制,因为配置文件应该由"负责任的"人更改。