Edit

Share via


SectionInformation.ForceSave Property

Definition

Gets or sets a value that indicates whether the associated configuration section will be saved even if it has not been modified.

public:
 property bool ForceSave { bool get(); void set(bool value); };
public bool ForceSave { get; set; }
member this.ForceSave : bool with get, set
Public Property ForceSave As Boolean

Property Value

true if the associated ConfigurationSection object will be saved even if it has not been modified; otherwise, false. The default is false.

Note: If the configuration file is saved (even if there are no modifications), ASP.NET restarts the application1.exe.config.

Examples

The following example shows how to use the ForceSave property of a ConfigurationSection object.

// Create a section whose name is 
// MyUrls that contains a nested collection as 
// defined by the UrlsSection class.
static void CreateSection()
{
    string sectionName = "MyUrls";

    try
    {

        // Get the current configuration file.
        System.Configuration.Configuration config =
                ConfigurationManager.OpenExeConfiguration(
                ConfigurationUserLevel.None);

        UrlsSection urlsSection;

        // Create the section whose name attribute 
        // is MyUrls in <configSections>.
        // Also, create the related target section 
        // MyUrls in <configuration>.
        if (config.Sections[sectionName] == null)
        {
            urlsSection = new UrlsSection();

            // Change the default values of 
            // the simple element.
            urlsSection.Simple.Name = "Contoso";
            urlsSection.Simple.Url = "http://www.contoso.com";
            urlsSection.Simple.Port = 8080;

            config.Sections.Add(sectionName, urlsSection);
            urlsSection.SectionInformation.ForceSave = true;
            config.Save(ConfigurationSaveMode.Full);
        }
    }
    catch (ConfigurationErrorsException e)
    {
        Console.WriteLine("[CreateSection: {0}]",
            e.ToString());
    }
}
' Create a section whose name is 
' MyUrls that contains a nested collection as 
' defined by the UrlsSection class.
Shared Sub CreateSection()
    Dim sectionName As String = "MyUrls"

    Try

        ' Get the current configuration file.
        Dim config _
        As System.Configuration.Configuration = _
        ConfigurationManager.OpenExeConfiguration( _
        ConfigurationUserLevel.None)

        Dim urlsSection As UrlsSection

        ' Create the section whose name
        ' attribute isMyUrls in 
        ' <configSections>.
        ' Also, create the related target section 
        ' MyUrls in <configuration>.
        If config.Sections(sectionName) Is Nothing Then
            urlsSection = New UrlsSection()

            ' Change the default values of 
            ' the simple element.
            urlsSection.Simple.Name = "Contoso"
            urlsSection.Simple.Url = "http://www.contoso.com"
            urlsSection.Simple.Port = 8080

            config.Sections.Add(sectionName, urlsSection)
            urlsSection.SectionInformation.ForceSave = True
            config.Save(ConfigurationSaveMode.Full)
        End If
    Catch e As ConfigurationErrorsException
        Console.WriteLine("[CreateSection: {0}]", e.ToString())
    End Try

End Sub

Applies to