如何:从 Web.config 文件读取应用程序设置

更新:2007 年 11 月

此示例从 Web.config 文件读取由 customsetting1 密钥标识的应用程序设置。appSettings 元素是字符串的 NameValueCollection 集合。使用集合元素可能会比使用其他配置元素稍微复杂一些。

若要获取根级别的 Web 配置的配置设置,应向 OpenWebConfiguration 方法传递 null。

若要更新配置设置,请使用配置对象的 SaveSaveAs 方法。有关更多信息,请参见 使用配置类。有关更多代码示例,请参见 AppSettingsSection 类和相关类。

此示例使用获取配置数据的非静态方法,这使得您可以从任何应用程序提取配置数据。如果您打算从代码所在的应用程序获取配置信息,请使用静态方法,这样处理速度会更快一些。有关更多信息,请参见 ASP.NET 配置 API 概述 中的“使用本地和远程配置设置”一节。

示例

Dim rootWebConfig1 As System.Configuration.Configuration
rootWebConfig1 = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(Nothing)
If (0 < rootWebConfig1.AppSettings.Settings.Count) Then
    Dim customSetting As System.Configuration.KeyValueConfigurationElement
    customSetting = rootWebConfig1.AppSettings.Settings("customsetting1")
    If Not (Nothing = customSetting.Value) Then
        Console.WriteLine("customsetting1 application string = {0}", customSetting.Value)
    Else
        Console.WriteLine("No customsetting1 application string")
    End If
End If
         System.Configuration.Configuration rootWebConfig1 =
                System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(null);
            if (0 < rootWebConfig1.AppSettings.Settings.Count)
            {
                System.Configuration.KeyValueConfigurationElement customSetting = 
                    rootWebConfig1.AppSettings.Settings["customsetting1"];
                if (null != customSetting)
                    Console.WriteLine("customsetting1 application string = \"{0}\"", 
                        customSetting.Value);
                else
                    Console.WriteLine("No customsetting1 application string");
            }

编译代码

此示例需要:

  • 根 Web.config 文件中的 appSettings 元素,如下所示:

    <appSettings>
      <add key="customsetting1" value="Some text here"/>
    </appSettings>
    

    appSettings 元素是 <configuration> 元素的直接子级,并且是 system.web 元素的对等项。

可靠编程

从 Web.config 文件的 appSettings 元素读取的值始终为 String 类型。如果指定的键在 Web.config 文件中不存在,则不会发生任何错误。而是返回空字符串。

安全性

应通过使用 Windows 安全设置限制可以读取配置文件的人士,在服务器上保护该配置文件。避免在 Web.config 文件的 appSettings 元素中存储敏感信息,如用户凭据。还要考虑对配置设置进行加密。有关更多信息,请参见使用受保护的配置加密配置信息

请参见

参考

appSettings 元素(常规设置架构)

ConfigurationSettings