WebConfigurationManager.GetSection Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Recupera a secção de configuração especificada do ficheiro de configuração predefinido da aplicação Web atual.
Sobrecargas
| Name | Description |
|---|---|
| GetSection(String) |
Recupera a secção de configuração especificada do ficheiro de configuração da aplicação Web atual. |
| GetSection(String, String) |
Recupera a secção de configuração especificada do ficheiro de configuração da aplicação Web na localização especificada. |
GetSection(String)
Recupera a secção de configuração especificada do ficheiro de configuração da aplicação Web atual.
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
O nome da secção de configuração.
Devoluções
O objeto de secção de configuração especificado, ou null se a secção não existir. Lembre-se que existem restrições de segurança quanto ao uso de GetSection(String) como operação em tempo de execução. Por exemplo, pode não conseguir aceder a uma secção em tempo de execução para modificações.
Exceções
Um ficheiro de configuração válido não podia ser carregado.
Exemplos
Os exemplos nesta secção mostram como aceder à informação de configuração com o GetSection método.
O exemplo seguinte mostra uma secção que pode ser acedida tanto a partir de uma aplicação Web como de uma aplicação de consola.
Note
Este exemplo demonstra como usar o GetWebApplicationSection método para obter um ConfigurationSection objeto a partir de um ficheiro de configuração.
// 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
Observações
Se GetSection for chamada dentro de uma aplicação Web, obtém a secção do ficheiro de configuração selecionada pelo sistema de acordo com a hierarquia de configuração da aplicação Web.
Atenção
Se a sua aplicação usar um protocolo diferente do HTTP, a GetSection sobrecarga que ocupa tanto o nome de uma secção como um caminho na sua lista de parâmetros é a usar. Deve especificar o caminho do ficheiro de configuração porque o sistema não pode fazer quaisquer suposições sobre o nível da hierarquia de configuração. Se usar a GetSection sobrecarga que ocupa apenas o nome de uma secção, o sistema tentará sempre devolver as definições de configuração ao nível da aplicação. Note-se, no entanto, que se o seu caminho especificado estiver fora da aplicação atual, a sobrecarga que ocupa um caminho também devolverá as definições de configuração ao nível da aplicação para a aplicação em execução.
Podes ligar GetSection a partir de uma aplicação de cliente. Neste caso, recebe a secção padrão do ficheiro de configuração selecionada pelo sistema de acordo com a hierarquia de configuração do cliente. Normalmente, este é o ficheiro Machine.config, a menos que tenhas uma configuração mapeada. Para ficheiros de configuração de mapeamento, consulte os métodos de mapeamento descritos a seguir.
Note
O GetSection método é um método em tempo de execução que opera na secção de um ficheiro de configuração ao nível da hierarquia onde a aplicação é executada. Para uma operação que não é em tempo de execução, use GetSection em vez disso. Este método opera na secção especificada de um ficheiro de configuração que obtém usando um dos métodos sobrecarregados para abrir um ficheiro de configuração, OpenWebConfiguration.
Notas para Herdeiros
O valor de retorno deve ser lançado para o tipo de configuração esperado antes da utilização. Para evitar possíveis exceções de casting, deve usar uma operação de casting condicional como o as operador em C#.
Ver também
Aplica-se a
GetSection(String, String)
Recupera a secção de configuração especificada do ficheiro de configuração da aplicação Web na localização especificada.
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
O nome da secção de configuração.
- path
- String
O caminho virtual do ficheiro de configuração.
Devoluções
O objeto de secção de configuração especificado, ou null se a secção não existir. Lembre-se de que existem restrições de segurança quanto à utilização de GetSection(String, String) como operação em tempo de execução. Por exemplo, pode não conseguir aceder a uma secção em tempo de execução para modificações.
Exceções
O método é chamado a partir de fora de uma aplicação Web.
Um ficheiro de configuração válido não podia ser carregado.
Exemplos
O exemplo seguinte mostra como aceder à informação de configuração com o GetSection método.
Note
Este exemplo demonstra como usar o GetSection método para obter um ConfigurationSection objeto a partir de um ficheiro de configuração 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
Observações
Se GetSection for chamada a partir de uma aplicação Web, obtém a secção do ficheiro de configuração definida pelo caminho especificado na hierarquia de configuração.
Atenção
Se a sua aplicação usar um protocolo diferente do HTTP, a GetSection sobrecarga que ocupa tanto o nome de uma secção como um caminho na sua lista de parâmetros é a usar. Deve especificar o caminho do ficheiro de configuração porque o sistema não pode fazer quaisquer suposições sobre o nível da hierarquia de configuração. Se usar a GetSection sobrecarga que ocupa apenas o nome de uma secção, o sistema tentará sempre devolver as definições de configuração ao nível da aplicação. Note-se, no entanto, que se o seu caminho especificado estiver fora da aplicação atual, a sobrecarga que ocupa um caminho também devolverá as definições de configuração ao nível da aplicação para a aplicação em execução.
Este método não pode ser chamado a partir de uma aplicação cliente.
Se quiser recuperar a secção de configuração do ficheiro de configuração localizado ao nível atual do diretório da aplicação Web, use o GetSection método.
Note
O GetSection método é um método em tempo de execução que opera na secção de um ficheiro de configuração ao nível hierárquico onde a aplicação é executada. Para uma operação que não é em tempo de execução, use GetSection em vez disso. Este método opera na secção especificada de um ficheiro de configuração que obtém usando um dos open métodos do ficheiro de configuração.
Notas para Herdeiros
O valor de retorno deve ser lançado para o tipo de configuração esperado antes da utilização. Para evitar possíveis exceções de casting, deve usar uma operação de casting condicional como o as operador em C#.