Compartir a través de


WebConfigurationManager.GetSection Método

Definición

Recupera la sección de configuración especificada del archivo de configuración predeterminada de la aplicación Web actual.

Sobrecargas

GetSection(String)

Recupera la sección de configuración especificada del archivo de configuración de la aplicación Web actual.

GetSection(String, String)

Recupera la sección de configuración especificada del archivo de configuración de la aplicación web y ubicación especificadas.

GetSection(String)

Recupera la sección de configuración especificada del archivo de configuración de la aplicación Web actual.

public:
 static System::Object ^ GetSection(System::String ^ sectionName);
public static object GetSection (string sectionName);
static member GetSection : string -> obj
Public Shared Function GetSection (sectionName As String) As Object

Parámetros

sectionName
String

Nombre de la sección de configuración.

Devoluciones

Object

Objeto de sección de configuración especificado o null si la sección no existe. Recuerde que existen restricciones de seguridad sobre el uso de GetSection(String) como una operación en tiempo de ejecución. Por ejemplo, quizá no pueda obtener acceso a una sección en tiempo de ejecución para realizar modificaciones.

Excepciones

No se pudo cargar un archivo de configuración válido.

Ejemplos

Los ejemplos de esta sección muestran cómo obtener acceso a la información de configuración con el GetSection método .

En el ejemplo siguiente se muestra una sección a la que se puede acceder desde una aplicación web o desde una aplicación de consola.

Nota

En este ejemplo se muestra cómo usar el GetWebApplicationSection método para obtener un ConfigurationSection objeto de un archivo de configuración.


// Show how to use the GetSection(string). 
// to access the connectionStrings section.
static void GetConnectionStringsSection()
{

    // Get the connectionStrings section.
    ConnectionStringsSection connectionStringsSection =
        WebConfigurationManager.GetSection("connectionStrings")
        as ConnectionStringsSection;

    // Get the connectionStrings key,value pairs collection.
    ConnectionStringSettingsCollection connectionStrings =
        connectionStringsSection.ConnectionStrings;
   
    // Get the collection enumerator.
    IEnumerator connectionStringsEnum =
        connectionStrings.GetEnumerator();

    // Loop through the collection and 
    // display the connectionStrings key, value pairs.
    int i = 0;
    Console.WriteLine("[Display the connectionStrings]");
    while (connectionStringsEnum.MoveNext())
    {
        string name = connectionStrings[i].Name;
        Console.WriteLine("Name: {0} Value: {1}",
        name, connectionStrings[name]);
        i += 1;
    }

    Console.WriteLine();
}
' Show how to use the GetSection(string). 
' to access the connectionStrings section.
Shared Sub GetConnectionStringsSection()
   
   ' Get the connectionStrings section.
     Dim connectionStringsSection As ConnectionStringsSection = _
     WebConfigurationManager.GetSection("connectionStrings")
   
   ' Get the connectionStrings key,value pairs collection.
     Dim connectionStrings As ConnectionStringSettingsCollection = _
     connectionStringsSection.ConnectionStrings
   
   ' Get the collection enumerator.
     Dim connectionStringsEnum As IEnumerator = _
     connectionStrings.GetEnumerator()
   
   ' Loop through the collection and 
   ' display the connectionStrings key, value pairs.
   Dim i As Integer = 0
   Console.WriteLine("[Display the connectionStrings]")
   While connectionStringsEnum.MoveNext()
      Dim name As String = connectionStrings(i).Name
         Console.WriteLine("Name: {0} Value: {1}", _
         name, connectionStrings(name))
      i += 1
   End While
   
   Console.WriteLine()
End Sub

Comentarios

Si GetSection se llama desde dentro de una aplicación web, obtiene la sección del archivo de configuración seleccionado por el sistema según la jerarquía de configuración de la aplicación web.

Precaución

Si la aplicación usa un protocolo diferente a HTTP, la GetSection sobrecarga que toma un nombre de sección y una ruta de acceso en su lista de parámetros es la que se va a usar. Debe especificar la ruta de acceso del archivo de configuración porque el sistema no puede realizar ninguna suposición sobre el nivel de jerarquía de configuración. Si usa la GetSection sobrecarga que toma solo un nombre de sección, el sistema siempre intentará devolver los valores de configuración en el nivel de aplicación. Sin embargo, tenga en cuenta que, si su ruta de acceso especificada está fuera de la aplicación actual, la sobrecarga que toma una ruta de acceso también devolverá los valores de configuración de nivel de aplicación para la aplicación que se está ejecutando actualmente.

Puede llamar GetSection desde dentro de una aplicación cliente. En este caso, obtiene la sección predeterminada del archivo de configuración seleccionado por el sistema según la jerarquía de configuración de cliente. Normalmente, este es el archivo Machine.config, a menos que tenga una configuración asignada. Para los archivos de configuración de asignación, consulte los métodos de asignación que se describen a continuación.

Nota

El GetSection método es un método en tiempo de ejecución que funciona en la sección de un archivo de configuración en el nivel de jerarquía en el que se ejecuta la aplicación. En el caso de una operación en tiempo de ejecución, use GetSection en su lugar. Este método funciona en la sección especificada de un archivo de configuración que se obtiene mediante uno de los métodos sobrecargados para abrir un archivo de configuración, OpenWebConfiguration.

Notas a los desarrolladores de herederos

El valor devuelto debe convertirse al tipo de configuración esperado antes de su uso. Para evitar posibles excepciones de conversión, debe usar una operación de conversión condicional como el as operador en C#.

Consulte también

Se aplica a

GetSection(String, String)

Recupera la sección de configuración especificada del archivo de configuración de la aplicación web y ubicación especificadas.

public:
 static System::Object ^ GetSection(System::String ^ sectionName, System::String ^ path);
public static object GetSection (string sectionName, string path);
static member GetSection : string * string -> obj
Public Shared Function GetSection (sectionName As String, path As String) As Object

Parámetros

sectionName
String

Nombre de la sección de configuración.

path
String

Ruta de acceso del archivo de configuración virtual.

Devoluciones

Object

Objeto de sección de configuración especificado o null si la sección no existe. Recuerde que existen restricciones de seguridad sobre el uso de GetSection(String, String) como una operación en tiempo de ejecución. Por ejemplo, es posible que no pueda obtener acceso a una sección en tiempo de ejecución para realizar modificaciones.

Excepciones

Se llama al método desde fuera de una aplicación Web.

No se pudo cargar un archivo de configuración válido.

Ejemplos

En el ejemplo siguiente se muestra cómo obtener acceso a la información de configuración con el GetSection método .

Nota

En este ejemplo se muestra cómo usar el GetSection método para obtener un ConfigurationSection objeto de un archivo de configuración especificado.


// Show the use of GetSection(string, string). 
// to access the connectionStrings section.
 static void GetSection2()
 {

     try
     {
         // Get the connectionStrings section for the 
         // specified Web app. This GetSection overload
         // can olny be called from within a Web application.
         ConnectionStringsSection connectionStringsSection =
             WebConfigurationManager.GetSection("connectionStrings",
             "/configTest") as ConnectionStringsSection;

         // Get the connectionStrings key,value pairs collection
         ConnectionStringSettingsCollection connectionStrings =
             connectionStringsSection.ConnectionStrings;

         // Get the collection enumerator.
         IEnumerator connectionStringsEnum =
             connectionStrings.GetEnumerator();

         // Loop through the collection and 
         // display the connectionStrings key, value pairs.
         int i = 0;
         Console.WriteLine("[Display connectionStrings]");
         while (connectionStringsEnum.MoveNext())
         {
             string name = connectionStrings[i].Name;
             Console.WriteLine("Name: {0} Value: {1}",
             name, connectionStrings[name]);
             i += 1;
         }
         Console.WriteLine();
     }

     catch (InvalidOperationException e)
     {
         string errorMsg = e.ToString();
         Console.WriteLine(errorMsg);
     }
 }
' Show the use of GetSection(string, string). 
' to access the connectionStrings section.
Shared Sub GetSection2()
   
   Try
      ' Get the connectionStrings section for the 
      ' specified Web app. This GetSection overload
      ' can olny be called from within a Web application.
         Dim connectionStringsSection As ConnectionStringsSection = _
         WebConfigurationManager.GetSection( _
         "connectionStrings", "/configTest")
      
      ' Get the connectionStrings key,value pairs collection
         Dim connectionStrings As ConnectionStringSettingsCollection = _
         connectionStringsSection.ConnectionStrings
      
      ' Get the collection enumerator.
         Dim connectionStringsEnum As IEnumerator = _
         connectionStrings.GetEnumerator()
      
      ' Loop through the collection and 
      ' display the connectionStrings key, value pairs.
      Dim i As Integer = 0
      Console.WriteLine("[Display connectionStrings]")
      While connectionStringsEnum.MoveNext()
         Dim name As String = connectionStrings(i).Name
             Console.WriteLine("Name: {0} Value: {1}", _
             name, connectionStrings(name))
         i += 1
      End While
      Console.WriteLine()
   
   Catch e As InvalidOperationException
      Dim errorMsg As String = e.ToString()
      Console.WriteLine(errorMsg)
   End Try
End Sub

Comentarios

Si GetSection se llama desde dentro de una aplicación web, obtiene la sección del archivo de configuración definido por la ruta de acceso especificada en la jerarquía de configuración.

Precaución

Si la aplicación usa un protocolo diferente a HTTP, la GetSection sobrecarga que toma un nombre de sección y una ruta de acceso en su lista de parámetros es la que se va a usar. Debe especificar la ruta de acceso del archivo de configuración porque el sistema no puede realizar ninguna suposición sobre el nivel de jerarquía de configuración. Si usa la GetSection sobrecarga que toma solo un nombre de sección, el sistema siempre intentará devolver los valores de configuración en el nivel de aplicación. Sin embargo, tenga en cuenta que, si su ruta de acceso especificada está fuera de la aplicación actual, la sobrecarga que toma una ruta de acceso también devolverá los valores de configuración de nivel de aplicación para la aplicación que se está ejecutando actualmente.

No se puede llamar a este método desde dentro de una aplicación cliente.

Si desea recuperar la sección de configuración del archivo de configuración ubicado en el nivel de directorio de aplicación web actual, use el GetSection método .

Nota

El GetSection método es un método en tiempo de ejecución que funciona en la sección de un archivo de configuración en el nivel de jerarquía en el que se ejecuta la aplicación. En el caso de una operación en tiempo de ejecución, use GetSection en su lugar. Este método funciona en la sección especificada de un archivo de configuración que se obtiene mediante uno de los métodos de open archivo de configuración.

Notas a los desarrolladores de herederos

El valor devuelto debe convertirse al tipo de configuración esperado antes de su uso. Para evitar posibles excepciones de conversión, debe usar una operación de conversión condicional como el as operador en C#.

Consulte también

Se aplica a