WebConfigurationManager.GetSection Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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
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
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#.