LocalFileSettingsProvider.SetPropertyValues 方法

定义

设置指定的属性设置组的值。

public:
 override void SetPropertyValues(System::Configuration::SettingsContext ^ context, System::Configuration::SettingsPropertyValueCollection ^ values);
public override void SetPropertyValues (System.Configuration.SettingsContext context, System.Configuration.SettingsPropertyValueCollection values);
override this.SetPropertyValues : System.Configuration.SettingsContext * System.Configuration.SettingsPropertyValueCollection -> unit
Public Overrides Sub SetPropertyValues (context As SettingsContext, values As SettingsPropertyValueCollection)

参数

context
SettingsContext

描述当前应用程序用法的 SettingsContext

values
SettingsPropertyValueCollection

表示要设置的属性设置组的 SettingsPropertyValueCollection

例外

遇到了用户范围的设置,但是当前的配置仅支持应用程序范围的设置。

- 或 -

将设置保存到配置文件时发生一般性失败。

注解

派生自 ApplicationSettingsBase的设置包装类包含 Save 方法,调用该方法以保留其所有设置属性的值。 此方法枚举与其设置属性关联的所有设置提供程序,并为每个SettingsProvider提供程序调用 SetPropertyValues 方法以执行实际的序列化操作。

SetPropertyValues 将每个用户范围的应用程序设置属性单独序列化为相应的 user.config 配置文件中的相应应用程序设置。

默认情况下, SetPropertyValues 方法使用以下逻辑序列来确定序列化方案,具体取决于设置属性的类型:

  1. 如果类型具有与方法实现关联的 TypeConverterConvertToString ,则使用此转换。

  2. 使用 XML 序列化。

但是,可以使用 指定首选序列化机制 SettingsSerializeAsAttributeLocalFileSettingsProvider 不支持 Visual Studio 2005 中的二进制序列化。

如果将用户范围的设置属性显式设置回其默认值,则本地文件设置提供程序将从用户配置文件中删除关联设置的条目。 此属性的下一个读取访问权限将仅使用默认值。

注意

LocalFileSettingsProvider 不使用加密来保留任何设置。 因此,请勿使用此提供程序存储纯文本密码或其他敏感信息,而不采取其他预防措施,例如单独加密配置文件中的信息。 有关详细信息,请参阅 使用受保护的配置加密配置信息

适用于

另请参阅