应用程序设置特性

应用程序设置体系结构提供了许多特性,这些特性可以应用于应用程序设置包装类或其各个属性。 这些特性在运行时由应用程序设置基础结构(通常特别是设置提供程序)检查,以便根据自定义包装器的规定需求调整其功能。

下表列出了可应用于应用程序设置包装类、此类的各个属性或两者的特性。 根据定义,只有一个范围特性(UserScopedSettingAttribute 或 ApplicationScopedSettingAttribute)必须应用于每个设置属性

注意

派生自 SettingsProvider 类的自定义设置提供程序只需识别以下三个特性:ApplicationScopedSettingAttribute、UserScopedSettingAttribute 和 DefaultSettingValueAttribute

属性 目标 说明
SettingsProviderAttribute 两者 为设置提供程序指定要持久使用的短名称。

如果未提供此特性,则会假定默认提供程序 LocalFileSettingsProvider
UserScopedSettingAttribute 推送、请求和匿名 将属性定义为用户范围的应用程序设置。
ApplicationScopedSettingAttribute 两者 将属性定义为应用程序范围的应用程序设置。
DefaultSettingValueAttribute properties 指定可以由提供程序反序列化为该属性的硬编码默认值的字符串。

LocalFileSettingsProvider 不需要此特性,如果已经保存了某个值,它将覆盖此特性提供的任何值。
SettingsDescriptionAttribute properties 为单个设置提供描述性测试,主要由运行时和设计时工具使用。
SettingsGroupNameAttribute 为设置组提供显式名称。 如果缺少此特性,ApplicationSettingsBase 将使用包装类名称。
SettingsGroupDescriptionAttribute 为设置组提供描述性测试,主要由运行时和设计时工具使用。
SettingsManageabilityAttribute 推送、请求和匿名 指定应提供给设置组或属性的零个或多个可管理性服务。 可用服务由 SettingsManageability 枚举描述。
SpecialSettingAttribute properties 指示设置属于特殊的预定义类别,例如连接字符串,该字符串建议由设置提供程序进行特殊处理。 此特性的预定义类别由 SpecialSetting 枚举定义。
SettingsSerializeAsAttribute 两者 指定设置组或属性的首选序列化机制。 可用的序列化机制由 SettingsSerializeAs 枚举定义。
NoSettingsVersionUpgradeAttribute properties 指定设置提供程序应禁用标记属性的所有应用程序升级功能。

“类”指示该特性只能应用于应用程序设置包装器类。 “属性”指示该特性只能应用于设置属性。 “两者”指示该特性可以应用于任一级别

另请参阅