ClientSettingsProvider Class

 

Enables Windows-based applications to retrieve user settings from a Web settings service.

Namespace:   System.Web.ClientServices.Providers
Assembly:  System.Web.Extensions (in System.Web.Extensions.dll)

System.Object
  System.Configuration.Provider.ProviderBase
    System.Configuration.SettingsProvider
      System.Web.ClientServices.Providers.ClientSettingsProvider

[SecurityCriticalAttribute]
[PermissionSetAttribute(SecurityAction.InheritanceDemand, Name = "FullTrust")]
public class ClientSettingsProvider : SettingsProvider, IApplicationSettingsProvider

NameDescription
System_CAPS_pubmethodClientSettingsProvider()

Initializes a new instance of the ClientSettingsProvider class.

NameDescription
System_CAPS_pubpropertyApplicationName

This property is not used by this class.(Overrides SettingsProvider.ApplicationName.)

System_CAPS_pubpropertyDescription

Gets a brief, friendly description suitable for display in administrative tools or other user interfaces (UIs).(Inherited from ProviderBase.)

System_CAPS_pubpropertyName

Gets the friendly name used to refer to the provider during configuration.(Inherited from ProviderBase.)

System_CAPS_pubpropertySystem_CAPS_staticServiceUri

Gets or sets the Web settings service location.

NameDescription
System_CAPS_pubmethodEquals(Object)

Determines whether the specified object is equal to the current object.(Inherited from Object.)

System_CAPS_protmethodFinalize()

Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.)

System_CAPS_pubmethodGetHashCode()

Serves as the default hash function. (Inherited from Object.)

System_CAPS_pubmethodGetPreviousVersion(SettingsContext, SettingsProperty)

Gets the previous version of the specified property.

System_CAPS_pubmethodSystem_CAPS_staticGetPropertyMetadata(String)

Gets a collection of metadata for all properties retrieved from the specified Web settings service.

System_CAPS_pubmethodGetPropertyValues(SettingsContext, SettingsPropertyCollection)

Returns the collection of settings property values for the specified application instance and settings property group.(Overrides SettingsProvider.GetPropertyValues(SettingsContext, SettingsPropertyCollection).)

System_CAPS_pubmethodGetType()

Gets the Type of the current instance.(Inherited from Object.)

System_CAPS_pubmethodInitialize(String, NameValueCollection)

Initializes the provider.(Overrides ProviderBase.Initialize(String, NameValueCollection).)

System_CAPS_protmethodMemberwiseClone()

Creates a shallow copy of the current Object.(Inherited from Object.)

System_CAPS_pubmethodReset(SettingsContext)

Resets all user settings to their default values.

System_CAPS_pubmethodSetPropertyValues(SettingsContext, SettingsPropertyValueCollection)

Sets the values of the specified group of property settings.(Overrides SettingsProvider.SetPropertyValues(SettingsContext, SettingsPropertyValueCollection).)

System_CAPS_pubmethodToString()

Returns a string that represents the current object.(Inherited from Object.)

System_CAPS_pubmethodUpgrade(SettingsContext, SettingsPropertyCollection)

This method is not used by this class.

NameDescription
System_CAPS_pubeventSettingsSaved

Occurs after the settings provider attempts to save the property values to the Web settings service.

You can use client application services to retrieve user settings from an existing Web settings service by configuring your application to use the ClientSettingsProvider class. For more information, see How to: Configure Client Application Services. After configuration, you can get and set user settings through an application settings class derived from ApplicationSettingsBase and configured to use the ClientSettingsProvider class. You can use Visual Studio to generate a Settings class for your project (accessed as Properties.Settings.Default in C# and My.Settings in Visual Basic). For more information about application settings, see Application Settings Overview.

You can retrieve the current ClientSettingsProvider through the ApplicationSettingsBase.Providers property using the fully-qualified ClientSettingsProvider class name as a key. You can also retrieve the provider through the SettingsLoadedEventArgs.Provider property when you handle the ApplicationSettingsBase.SettingsLoaded event.

System_CAPS_noteNote

This class contains a SecurityCriticalAttribute at the class level that applies to all members of the class. A run-time exception is thrown if the immediate caller is security-transparent or partially trusted. For more information about security-critical types and members, see Security-Transparent Code, Level 2.

System_CAPS_noteNote

This class contains an inheritance demand at the class level that applies to all members. A SecurityException is thrown when the derived class does not have full-trust permission. For details about security demands, see Link Demands and Inheritance Demands.

The following example code demonstrates how to use this event to display a list of settings that were not successfully saved.

private void AttachSettingsSavedEventHandler()
{
    ((ClientSettingsProvider)Properties.Settings.Default.Providers
        ["System.Web.ClientServices.Providers.ClientSettingsProvider"])
        .SettingsSaved +=
        new EventHandler<SettingsSavedEventArgs>(Form1_SettingsSaved);
}

private void Form1_SettingsSaved(object sender,
    SettingsSavedEventArgs e)
{
    // If any settings were not saved, display a list of them.
    if (e.FailedSettingsList.Count > 0)
    {
        String failedSettings = String.Join(
            Environment.NewLine,
            e.FailedSettingsList.ToArray());

        String message = String.Format("{0}{1}{1}{2}",
            "The following setting(s) were not saved:",
            Environment.NewLine, failedSettings);

        MessageBox.Show(message, "Unable to save settings",
            MessageBoxButtons.OK, MessageBoxIcon.Warning);
    }
}

InheritanceDemand

for full trust for inheritors. This class cannot be inherited by partially trusted code.

SecurityCriticalAttribute

requires full trust for the immediate caller. This class cannot be used by partially trusted or transparent code.

.NET Framework
Available since 3.5

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
Show: