应用程序设置架构
应用程序设置允许 Windows 窗体或 ASP.NET 应用程序存储和检索应用程序范围和用户范围的设置。 本上下文中的“设置”是可能特定于应用程序或特定于当前用户的任何信息 -- 从数据库连接字符串到用户的首选默认窗口大小的任何内容。
默认情况下,Windows 窗体应用程序中的应用程序设置使用 LocalFileSettingsProvider,后者使用 .NET 配置系统将设置存储在一个 XML 配置文件中。 有关应用程序设置所使用的文件的更多信息,请参见 应用程序设置体系结构。
应用程序设置将下列元素定义为它使用的配置文件的一部分。
元素 |
说明 |
---|---|
<applicationSettings> 元素 |
包含特定于应用程序的所有 <setting> 标记。 |
<userSettings> 元素 |
包含特定于当前用户的所有 <setting> 标记。 |
<setting> 元素 |
定义设置。 <applicationSettings> 或 <userSettings> 的子项。 |
<value> 元素 |
定义设置的值。 <setting> 的子项。 |
<applicationSettings> 元素
此元素包含特定于客户端计算机上的某个应用程序实例的所有 <setting> 标记。 它不定义任何特性。
<userSettings> 元素
此元素包含特定于当前正在使用应用程序的用户的所有 <setting> 标记。 它不定义任何特性。
<setting> 元素
此元素定义设置。 它具有以下特性:
元素 |
说明 |
---|---|
name |
必选。 设置的唯一 ID。 通过 Visual Studio 创建的设置使用名称 ProjectName.Properties.Settings 进行保存。 |
serializedAs |
必选。 用于将值序列化为文本的格式。 有效值为:
|
<value> 元素
此元素包含设置的值。
示例
下面的代码示例演示一个应用程序设置文件,该文件定义两个应用程序范围的设置和两个用户范围的设置。
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="WindowsApplication1.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</sectionGroup>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="WindowsApplication1.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" />
</sectionGroup>
</configSections>
<applicationSettings>
<WindowsApplication1.Properties.Settings>
<setting name="Cursor" serializeAs="String">
<value>Default</value>
</setting>
<setting name="DoubleBuffering" serializeAs="String">
<value>False</value>
</setting>
</WindowsApplication1.Properties.Settings>
</applicationSettings>
<userSettings>
<WindowsApplication1.Properties.Settings>
<setting name="FormTitle" serializeAs="String">
<value>Form1</value>
</setting>
<setting name="FormSize" serializeAs="String">
<value>595, 536</value>
</setting>
</WindowsApplication1.Properties.Settings>
</userSettings>
</configuration>