WebConfigurationManager.GetSection Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft den angegebenen Konfigurationsabschnitt aus der Standardkonfigurationsdatei der aktuellen Webanwendung ab.
Überlädt
GetSection(String) |
Ruft den angegebenen Konfigurationsabschnitt aus der Konfigurationsdatei der aktuellen Webanwendung ab. |
GetSection(String, String) |
Ruft den angegebenen Konfigurationsabschnitt aus der Konfigurationsdatei der Webanwendung am angegebenen Speicherort ab. |
GetSection(String)
Ruft den angegebenen Konfigurationsabschnitt aus der Konfigurationsdatei der aktuellen Webanwendung ab.
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
Parameter
- sectionName
- String
Der Konfigurationsabschnittsname.
Gibt zurück
Das angegebene Konfigurationsabschnittsobjekt oder null
, wenn der Abschnitt nicht vorhanden ist. Beachten Sie, dass bei der Verwendung von GetSection(String) als Laufzeitvorgang Sicherheitseinschränkungen bestehen. Daher ist es u. U. nicht möglich, zur Laufzeit auf einen Abschnitt zuzugreifen, um diesen zu ändern.
Ausnahmen
Es konnte keine gültige Konfigurationsdatei geladen werden.
Beispiele
Die Beispiele in diesem Abschnitt zeigen, wie Sie mit der GetSection Methode auf Konfigurationsinformationen zugreifen.
Das folgende Beispiel zeigt einen Abschnitt, auf den entweder von einer Webanwendung oder einer Konsolenanwendung zugegriffen werden kann.
Hinweis
In diesem Beispiel wird veranschaulicht, wie Sie mithilfe der GetWebApplicationSection Methode ein ConfigurationSection Objekt aus einer Konfigurationsdatei abrufen.
// 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
Hinweise
Wenn GetSection sie in einer Webanwendung aufgerufen wird, ruft sie den Abschnitt aus der vom System ausgewählten Konfigurationsdatei gemäß der Konfigurationshierarchie der Webanwendung ab.
Achtung
Wenn Ihre Anwendung ein anderes Protokoll als HTTP verwendet, ist die Überladung, die GetSection sowohl einen Abschnittsnamen als auch einen Pfad in der Parameterliste verwendet, die verwendet werden soll. Sie müssen den Konfigurationsdateipfad angeben, da das System keine Annahmen über die Konfigurationshierarchieebene vornehmen kann. Wenn Sie die Überladung verwenden, die GetSection nur einen Abschnittsnamen verwendet, versucht das System immer, die Konfigurationseinstellungen auf Anwendungsebene zurückzugeben. Beachten Sie jedoch, dass, wenn sich der angegebene Pfad außerhalb der aktuellen Anwendung befindet, die Überladung, die einen Pfad verwendet, auch die Konfigurationseinstellungen auf Anwendungsebene für die derzeit ausgeführte Anwendung zurück.
Sie können von einer Clientanwendung aus aufrufen GetSection . In diesem Fall wird der Standardabschnitt aus der vom System ausgewählten Konfigurationsdatei gemäß der Clientkonfigurationshierarchie abgerufen. In der Regel ist dies die Machine.config Datei, es sei denn, Sie verfügen über eine zugeordnete Konfiguration. Informationen zum Zuordnen von Konfigurationsdateien finden Sie in den als nächstes beschriebenen Zuordnungsmethoden.
Hinweis
Die GetSection Methode ist eine Laufzeitmethode, die im Abschnitt einer Konfigurationsdatei auf Hierarchieebene ausgeführt wird, in der die Anwendung ausgeführt wird. Verwenden Sie GetSection stattdessen für einen Nicht-Laufzeitvorgang. Diese Methode wird im angegebenen Abschnitt einer Konfigurationsdatei ausgeführt, die Sie mithilfe einer der überladenen Methoden zum Öffnen einer Konfigurationsdatei abrufen. OpenWebConfiguration
Hinweise für Vererber
Der Rückgabewert muss vor der Verwendung in den erwarteten Konfigurationstyp umgerechnet werden. Um mögliche Umwandlungsausnahmeregelungen zu vermeiden, sollten Sie einen bedingten Umwandlungsvorgang wie den as
Operator in C# verwenden.
Siehe auch
Gilt für
GetSection(String, String)
Ruft den angegebenen Konfigurationsabschnitt aus der Konfigurationsdatei der Webanwendung am angegebenen Speicherort ab.
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
Parameter
- sectionName
- String
Der Konfigurationsabschnittsname.
- path
- String
Der virtuelle Konfigurationsdateipfad.
Gibt zurück
Das angegebene Konfigurationsabschnittsobjekt oder null
, wenn der Abschnitt nicht vorhanden ist. Beachten Sie, dass bei der Verwendung von GetSection(String, String) als Laufzeitvorgang Sicherheitseinschränkungen bestehen. Daher ist es u. U. nicht möglich, zur Laufzeit auf einen Abschnitt zuzugreifen, um diesen zu ändern.
Ausnahmen
Die Methode wird außerhalb einer Webanwendung aufgerufen.
Es konnte keine gültige Konfigurationsdatei geladen werden.
Beispiele
Das folgende Beispiel zeigt, wie Sie mit der GetSection Methode auf Konfigurationsinformationen zugreifen.
Hinweis
In diesem Beispiel wird veranschaulicht, wie Sie mithilfe der GetSection Methode ein ConfigurationSection Objekt aus einer angegebenen Konfigurationsdatei abrufen.
// 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
Hinweise
Wenn GetSection sie aus einer Webanwendung aufgerufen wird, ruft sie den Abschnitt aus der Konfigurationsdatei ab, die durch den angegebenen Pfad in der Konfigurationshierarchie definiert ist.
Achtung
Wenn Ihre Anwendung ein anderes Protokoll als HTTP verwendet, ist die Überladung, die GetSection sowohl einen Abschnittsnamen als auch einen Pfad in der Parameterliste verwendet, die verwendet werden soll. Sie müssen den Konfigurationsdateipfad angeben, da das System keine Annahmen über die Konfigurationshierarchieebene vornehmen kann. Wenn Sie die Überladung verwenden, die GetSection nur einen Abschnittsnamen verwendet, versucht das System immer, die Konfigurationseinstellungen auf Anwendungsebene zurückzugeben. Beachten Sie jedoch, dass, wenn sich der angegebene Pfad außerhalb der aktuellen Anwendung befindet, die Überladung, die einen Pfad verwendet, auch die Konfigurationseinstellungen auf Anwendungsebene für die derzeit ausgeführte Anwendung zurück.
Diese Methode kann nicht innerhalb einer Clientanwendung aufgerufen werden.
Wenn Sie den Konfigurationsabschnitt aus der Konfigurationsdatei abrufen möchten, die sich auf der aktuellen Webanwendungsverzeichnisebene befindet, verwenden Sie die GetSection Methode.
Hinweis
Die GetSection Methode ist eine Laufzeitmethode, die im Abschnitt einer Konfigurationsdatei auf Hierarchieebene ausgeführt wird, in der die Anwendung ausgeführt wird. Verwenden Sie GetSection stattdessen für einen Nicht-Laufzeitvorgang. Diese Methode wird im angegebenen Abschnitt einer Konfigurationsdatei ausgeführt, die Sie mithilfe einer der open
Konfigurationsdateimethoden abrufen.
Hinweise für Vererber
Der Rückgabewert muss vor der Verwendung in den erwarteten Konfigurationstyp umgerechnet werden. Um mögliche Umwandlungsausnahmeregelungen zu vermeiden, sollten Sie einen bedingten Umwandlungsvorgang wie den as
Operator in C# verwenden.