WebConfigurationManager.GetSection Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Načte zadaný oddíl konfigurace z výchozího konfiguračního souboru aktuální webové aplikace.
Přetížení
GetSection(String) |
Načte zadaný oddíl konfigurace z konfiguračního souboru aktuální webové aplikace. |
GetSection(String, String) |
Načte zadaný oddíl konfigurace z konfiguračního souboru webové aplikace v zadaném umístění. |
GetSection(String)
Načte zadaný oddíl konfigurace z konfiguračního souboru aktuální webové aplikace.
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
Parametry
- sectionName
- String
Název oddílu konfigurace.
Návraty
Zadaný objekt oddílu konfigurace nebo null
pokud oddíl neexistuje. Mějte na paměti, že existují omezení zabezpečení pro použití GetSection(String) jako operace modulu runtime. Možná nebudete mít přístup k oddílu za běhu, například k úpravám.
Výjimky
Nelze načíst platný konfigurační soubor.
Příklady
Příklady v této části ukazují, jak pomocí metody získat přístup k informacím GetSection o konfiguraci.
Následující příklad ukazuje část, ke které lze získat přístup z webové aplikace nebo konzolové aplikace.
Poznámka
Tento příklad ukazuje, jak pomocí GetWebApplicationSection metody získat ConfigurationSection objekt z konfiguračního souboru.
// 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
Poznámky
Pokud GetSection je volána z webové aplikace, získá oddíl z konfiguračního souboru vybraného systémem podle hierarchie konfigurace webové aplikace.
Upozornění
Pokud vaše aplikace používá jiný protokol než HTTP, přetížení, GetSection které přebírá název oddílu i cestu v seznamu parametrů, je to, který se má použít. Je nutné zadat cestu ke konfiguračnímu souboru, protože systém nemůže provést žádné předpoklady o úrovni hierarchie konfigurace. Pokud použijete GetSection přetížení, které přebírá pouze název oddílu, systém se vždy pokusí vrátit nastavení konfigurace na úrovni aplikace. Všimněte si ale, že pokud je jeho zadaná cesta mimo aktuální aplikaci, přetížení, které přebírá cestu, vrátí také nastavení konfigurace na úrovni aplikace pro aktuálně spuštěnou aplikaci.
Můžete volat GetSection z klientské aplikace. V tomto případě získá výchozí oddíl z konfiguračního souboru vybraného systémem podle hierarchie konfigurace klienta. Obvykle se jedná o soubor Machine.config, pokud nemáte namapovanou konfiguraci. Informace o mapování konfiguračních souborů najdete v dalších metodách mapování.
Poznámka
Tato GetSection metoda je metoda za běhu, která pracuje v části konfiguračního souboru na úrovni hierarchie, ve které aplikace běží. Pro operaci bez běhu použijte místo GetSection toho. Tato metoda pracuje se zadaným oddílem konfiguračního souboru, který získáte pomocí jedné z přetížených metod pro otevření konfiguračního souboru, OpenWebConfiguration.
Poznámky pro dědice
Návratová hodnota musí být před použitím přetypovaná na očekávaný typ konfigurace. Pokud chcete zabránit možným výjimkám přetypování, měli byste použít podmíněnou operaci přetypování, jako je as
operátor v jazyce C#.
Viz také
Platí pro
GetSection(String, String)
Načte zadaný oddíl konfigurace z konfiguračního souboru webové aplikace v zadaném umístění.
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
Parametry
- sectionName
- String
Název oddílu konfigurace.
- path
- String
Cesta k virtuálnímu konfiguračnímu souboru.
Návraty
Zadaný objekt oddílu konfigurace nebo null
pokud oddíl neexistuje. Mějte na paměti, že pro použití GetSection(String, String) jako operace za běhu existují omezení zabezpečení. Možná nebudete moct získat přístup k oddílu za běhu, například k úpravám.
Výjimky
Metoda se volá mimo webovou aplikaci.
Nelze načíst platný konfigurační soubor.
Příklady
Následující příklad ukazuje, jak pomocí metody získat přístup k informacím GetSection o konfiguraci.
Poznámka
Tento příklad ukazuje, jak použít metodu GetSection ConfigurationSection k získání objektu ze zadaného konfiguračního souboru.
// 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
Poznámky
Pokud GetSection je volána z webové aplikace, získá oddíl z konfiguračního souboru definovaného zadanou cestou v hierarchii konfigurace.
Upozornění
Pokud vaše aplikace používá jiný protokol než HTTP, přetížení, GetSection které přebírá název oddílu i cestu v seznamu parametrů, je to, který se má použít. Je nutné zadat cestu ke konfiguračnímu souboru, protože systém nemůže provést žádné předpoklady o úrovni hierarchie konfigurace. Pokud použijete GetSection přetížení, které přebírá pouze název oddílu, systém se vždy pokusí vrátit nastavení konfigurace na úrovni aplikace. Všimněte si ale, že pokud je jeho zadaná cesta mimo aktuální aplikaci, přetížení, které přebírá cestu, vrátí také nastavení konfigurace na úrovni aplikace pro aktuálně spuštěnou aplikaci.
Tuto metodu nelze volat z klientské aplikace.
Pokud chcete načíst konfigurační oddíl z konfiguračního souboru umístěného na aktuální úrovni adresáře webové aplikace, použijte metodu GetSection .
Poznámka
Metoda GetSection je metoda běhu, která pracuje v části konfiguračního souboru na úrovni hierarchie, ve které aplikace běží. Pro operaci bez běhu použijte místo GetSection toho. Tato metoda funguje v zadané části konfiguračního souboru, který získáte pomocí jedné z metod konfiguračního open
souboru.
Poznámky pro dědice
Návratová hodnota musí být před použitím přetypovaná na očekávaný typ konfigurace. Pokud chcete zabránit možným výjimkám přetypování, měli byste použít podmíněnou operaci přetypování, jako je as
operátor v jazyce C#.