Compartir vía


ConfigurationManager.OpenMappedExeConfiguration Método

Definición

Abre el archivo de configuración de cliente especificado como un objeto Configuration.

Sobrecargas

OpenMappedExeConfiguration(ExeConfigurationFileMap, ConfigurationUserLevel)

Abre el archivo de configuración de cliente especificado como un objeto Configuration que utiliza la asignación de archivos y el nivel de usuario indicados.

OpenMappedExeConfiguration(ExeConfigurationFileMap, ConfigurationUserLevel, Boolean)

Abre el archivo de configuración de cliente especificado como un objeto Configuration que usa la asignación de archivos, nivel de usuario y opción de carga previa.

OpenMappedExeConfiguration(ExeConfigurationFileMap, ConfigurationUserLevel)

Source:
ConfigurationManager.cs
Source:
ConfigurationManager.cs
Source:
ConfigurationManager.cs

Abre el archivo de configuración de cliente especificado como un objeto Configuration que utiliza la asignación de archivos y el nivel de usuario indicados.

public:
 static System::Configuration::Configuration ^ OpenMappedExeConfiguration(System::Configuration::ExeConfigurationFileMap ^ fileMap, System::Configuration::ConfigurationUserLevel userLevel);
public static System.Configuration.Configuration OpenMappedExeConfiguration (System.Configuration.ExeConfigurationFileMap fileMap, System.Configuration.ConfigurationUserLevel userLevel);
static member OpenMappedExeConfiguration : System.Configuration.ExeConfigurationFileMap * System.Configuration.ConfigurationUserLevel -> System.Configuration.Configuration
Public Shared Function OpenMappedExeConfiguration (fileMap As ExeConfigurationFileMap, userLevel As ConfigurationUserLevel) As Configuration

Parámetros

fileMap
ExeConfigurationFileMap

Archivo de configuración que se va a usar en lugar del archivo de configuración predeterminado de la aplicación.

userLevel
ConfigurationUserLevel

Uno de los valores de enumeración que especifica el nivel de usuario para el que se va a abrir la configuración.

Devoluciones

Objeto de configuración.

Excepciones

No se pudo cargar un archivo de configuración.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar el OpenMappedExeConfiguration método para obtener todas las secciones contenidas en el archivo de configuración.


   // Access a configuration file using mapping.
   // This function uses the OpenMappedExeConfiguration 
   // method to access a new configuration file.   
   // It also gets the custom ConsoleSection and 
   // sets its ConsoleElement BackgroundColor and
   // ForegroundColor properties to green and red
   // respectively. Then it uses these properties to
   // set the console colors.  
   public static void MapExeConfiguration()
   {

     // Get the application configuration file.
     System.Configuration.Configuration config =
       ConfigurationManager.OpenExeConfiguration(
             ConfigurationUserLevel.None);
   
     Console.WriteLine(config.FilePath);

     if (config == null)
     {
       Console.WriteLine(
         "The configuration file does not exist.");
       Console.WriteLine(
        "Use OpenExeConfiguration to create the file.");
     }

     // Create a new configuration file by saving 
     // the application configuration to a new file.
     string appName = 
       Environment.GetCommandLineArgs()[0];

     string configFile =  string.Concat(appName, 
       ".2.config");
     config.SaveAs(configFile, ConfigurationSaveMode.Full);

     // Map the new configuration file.
     ExeConfigurationFileMap configFileMap = 
         new ExeConfigurationFileMap();
     configFileMap.ExeConfigFilename = configFile;

     // Get the mapped configuration file
    config = 
       ConfigurationManager.OpenMappedExeConfiguration(
         configFileMap, ConfigurationUserLevel.None);

     // Make changes to the new configuration file. 
     // This is to show that this file is the 
     // one that is used.
     string sectionName = "consoleSection";

     ConsoleSection customSection =
       (ConsoleSection)config.GetSection(sectionName);

     if (customSection == null)
     {
         customSection = new ConsoleSection();
         config.Sections.Add(sectionName, customSection);
     }
     else
         // Change the section configuration values.
         customSection =
             (ConsoleSection)config.GetSection(sectionName);

     customSection.ConsoleElement.BackgroundColor =
         ConsoleColor.Green;
     customSection.ConsoleElement.ForegroundColor =
         ConsoleColor.Red;

     // Save the configuration file.
     config.Save(ConfigurationSaveMode.Modified);

     // Force a reload of the changed section. This 
     // makes the new values available for reading.
     ConfigurationManager.RefreshSection(sectionName);

     // Set console properties using the 
     // configuration values contained in the 
     // new configuration file.
     Console.BackgroundColor =
       customSection.ConsoleElement.BackgroundColor;
     Console.ForegroundColor =
       customSection.ConsoleElement.ForegroundColor;
     Console.Clear();

     Console.WriteLine();
     Console.WriteLine("Using OpenMappedExeConfiguration.");
     Console.WriteLine("Configuration file is: {0}", 
       config.FilePath);
   }

' Access a configuration file using mapping.
' This function uses the OpenMappedExeConfiguration 
' method to access a new configuration file.   
' It also gets the custom ConsoleSection and 
' sets its ConsoleElement BackgroundColor and
' ForegroundColor properties to green and red
' respectively. Then it uses these properties to
' set the console colors.  
Public Shared Sub MapExeConfiguration()

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

    Console.WriteLine(config.FilePath)

    If config Is Nothing Then
        Console.WriteLine( _
        "The configuration file does not exist.")
        Console.WriteLine( _
        "Use OpenExeConfiguration to create file.")
    End If

    ' Create a new configuration file by saving 
    ' the application configuration to a new file.
    Dim appName As String = _
        Environment.GetCommandLineArgs()(0)

    Dim configFile As String = _
        String.Concat(appName, "2.config")
    config.SaveAs(configFile, _
                  ConfigurationSaveMode.Full)

    ' Map the new configuration file.
    Dim configFileMap As New ExeConfigurationFileMap()
    configFileMap.ExeConfigFilename = configFile

    ' Get the mapped configuration file
    config = _
    ConfigurationManager.OpenMappedExeConfiguration( _
        configFileMap, ConfigurationUserLevel.None)

    ' Make changes to the new configuration file. 
    ' This is to show that this file is the 
    ' one that is used.
    Dim sectionName As String = "consoleSection"

    Dim customSection As ConsoleSection = _
        DirectCast(config.GetSection(sectionName),  _
            ConsoleSection)

    If customSection Is Nothing Then
        customSection = New ConsoleSection()
        config.Sections.Add(sectionName, customSection)
    End If

    ' Change the section configuration values.
    customSection = _
        DirectCast(config.GetSection(sectionName),  _
            ConsoleSection)
    customSection.ConsoleElement.BackgroundColor = _
        ConsoleColor.Green
    customSection.ConsoleElement.ForegroundColor = _
        ConsoleColor.Red
    ' Save the configuration file.
    config.Save(ConfigurationSaveMode.Modified)

    ' Force a reload of the changed section. This 
    ' makes the new values available for reading.
    ConfigurationManager.RefreshSection(sectionName)

    ' Set console properties using the 
    ' configuration values contained in the 
    ' new configuration file.
    Console.BackgroundColor = _
        customSection.ConsoleElement.BackgroundColor
    Console.ForegroundColor = _
        customSection.ConsoleElement.ForegroundColor
    Console.Clear()

    Console.WriteLine()
    Console.WriteLine( _
        "Using OpenMappedExeConfiguration.")
    Console.WriteLine( _
        "Configuration file is: {0}", config.FilePath)
End Sub

Comentarios

El ConfigurationUserLevel objeto determina la ubicación del archivo de configuración que se abre. Indica si el archivo no tiene ningún nivel de usuario (el archivo de configuración está en el mismo directorio que la aplicación) o tiene un nivel por usuario (el archivo de configuración se encuentra en una ruta de acceso de configuración de la aplicación determinada por userLevel).

Nota

Para obtener el objeto de un recurso, el Configuration código debe tener permisos de lectura en todos los archivos de configuración de los que hereda la configuración. Para actualizar un archivo de configuración, el código también debe tener permisos de escritura para el archivo de configuración y el directorio en el que existe.

Consulte también

Se aplica a

OpenMappedExeConfiguration(ExeConfigurationFileMap, ConfigurationUserLevel, Boolean)

Source:
ConfigurationManager.cs
Source:
ConfigurationManager.cs
Source:
ConfigurationManager.cs

Abre el archivo de configuración de cliente especificado como un objeto Configuration que usa la asignación de archivos, nivel de usuario y opción de carga previa.

public:
 static System::Configuration::Configuration ^ OpenMappedExeConfiguration(System::Configuration::ExeConfigurationFileMap ^ fileMap, System::Configuration::ConfigurationUserLevel userLevel, bool preLoad);
public static System.Configuration.Configuration OpenMappedExeConfiguration (System.Configuration.ExeConfigurationFileMap fileMap, System.Configuration.ConfigurationUserLevel userLevel, bool preLoad);
static member OpenMappedExeConfiguration : System.Configuration.ExeConfigurationFileMap * System.Configuration.ConfigurationUserLevel * bool -> System.Configuration.Configuration
Public Shared Function OpenMappedExeConfiguration (fileMap As ExeConfigurationFileMap, userLevel As ConfigurationUserLevel, preLoad As Boolean) As Configuration

Parámetros

fileMap
ExeConfigurationFileMap

Archivo de configuración que se va a usar en lugar del archivo de configuración de aplicación predeterminado.

userLevel
ConfigurationUserLevel

Uno de los valores de enumeración que especifica el nivel de usuario para el que se va a abrir la configuración.

preLoad
Boolean

true para cargar previamente todos los grupos de secciones y secciones; de lo contrario, false.

Devoluciones

Objeto de configuración.

Excepciones

No se pudo cargar un archivo de configuración.

Comentarios

El ConfigurationUserLevel objeto determina la ubicación del archivo de configuración que se está abriendo. Indica si el archivo no tiene ningún nivel de usuario (el archivo de configuración está en el mismo directorio que la aplicación) o tiene un nivel por usuario (el archivo de configuración se encuentra en una ruta de acceso de configuración de la aplicación determinada por userLevel).

Nota

Para obtener el objeto de un recurso, el Configuration código debe tener permisos de lectura en todos los archivos de configuración de los que hereda la configuración. Para actualizar un archivo de configuración, el código también debe tener permisos de escritura para el archivo de configuración y el directorio en el que existe.

Para obtener un ejemplo de código, consulte la OpenMappedExeConfiguration sobrecarga.

Se aplica a