This topic has not yet been rated - Rate this topic

Configuration.SaveAs Method (String, ConfigurationSaveMode, Boolean)

Writes the configuration settings contained within this Configuration object to the specified XML configuration file.

Namespace:  System.Configuration
Assembly:  System.Configuration (in System.Configuration.dll)
public void SaveAs(
	string filename,
	ConfigurationSaveMode saveMode,
	bool forceSaveAll
)

Parameters

filename
Type: System.String

The path and file name to save the configuration file to.

saveMode
Type: System.Configuration.ConfigurationSaveMode

A ConfigurationSaveMode value that determines which property values to save.

forceSaveAll
Type: System.Boolean

true to save even if the configuration was not modified; otherwise, false.

ExceptionCondition
ArgumentException

filename is null or an empty string ("").

The SaveAs method persists configuration settings in the Configuration object to a new file based on the saveMode and forceSaveAll parameters.

If a configuration file does not exist at the physical location represented by the FilePath property, a new configuration file will be created to contain any settings that are different from the inherited configuration.

If the configuration file has changed since this Configuration object was created, a run-time error occurs.

The following code example demonstrates how to use the SaveAs method.


// Show how to use different modalities to save  
// a configuration file. 
static void SaveConfigurationFile()
{
    try
    {

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

        // Save the full configuration file and force save even if the file was not modified.
        config.SaveAs("MyConfigFull.config", ConfigurationSaveMode.Full, true);
        Console.WriteLine("Saved config file as MyConfigFull.config using the mode: {0}",
            ConfigurationSaveMode.Full.ToString());

        config =
                ConfigurationManager.OpenExeConfiguration(
                ConfigurationUserLevel.None) as Configuration;

        // Save only the part of the configuration file that was modified. 
        config.SaveAs("MyConfigModified.config", ConfigurationSaveMode.Modified, true);
        Console.WriteLine("Saved config file as MyConfigModified.config using the mode: {0}",
            ConfigurationSaveMode.Modified.ToString());

        config =
                ConfigurationManager.OpenExeConfiguration(
                ConfigurationUserLevel.None) as Configuration;

        // Save the full configuration file.
        config.SaveAs("MyConfigMinimal.config");
        Console.WriteLine("Saved config file as MyConfigMinimal.config using the mode: {0}",
            ConfigurationSaveMode.Minimal.ToString());

    }
    catch (ConfigurationErrorsException err)
    {
        Console.WriteLine("SaveConfigurationFile: {0}", err.ToString());
    }

}

.NET Framework

Supported in: 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Did you find this helpful?
(1500 characters remaining)
© 2013 Microsoft. All rights reserved.