WebConfigurationManager.GetSection Methode

Definition

Ruft den angegebenen Konfigurationsabschnitt aus der Standardkonfigurationsdatei der aktuellen Webanwendung ab.

Überlädt

Name Beschreibung
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 Name des Konfigurationsabschnitts.

Gibt zurück

Das angegebene Konfigurationsabschnittsobjekt oder null wenn der Abschnitt nicht vorhanden ist. Denken Sie daran, dass Sicherheitsbeschränkungen für die Verwendung GetSection(String) als Laufzeitvorgang vorhanden sind. Möglicherweise können Sie nicht zur Laufzeit auf einen Abschnitt für Änderungen zugreifen.

Ausnahmen

Eine gültige Konfigurationsdatei konnte nicht 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 über eine Webanwendung oder eine Konsolenanwendung zugegriffen werden kann.

Note

In diesem Beispiel wird die Verwendung der GetWebApplicationSection Methode zum Abrufen eines ConfigurationSection Objekts aus einer Konfigurationsdatei veranschaulicht.


// 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 innerhalb einer Webanwendung aufgerufen wird, wird der Abschnitt aus der vom System ausgewählten Konfigurationsdatei gemäß der Konfigurationshierarchie der Webanwendung abgerufen.

Vorsicht

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 die Überladung, die einen Pfad verwendet, auch die Konfigurationseinstellungen auf Anwendungsebene für die aktuell ausgeführte Anwendung zurückgibt, wenn sich der angegebene Pfad außerhalb der aktuellen Anwendung befindet.

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 zu Zuordnungskonfigurationsdateien finden Sie in den als nächstes beschriebenen Zuordnungsmethoden.

Note

Die GetSection Methode ist eine Laufzeitmethode, die auf der Hierarchieebene, in der die Anwendung ausgeführt wird, im Abschnitt einer Konfigurationsdatei ausgeführt wird. Verwenden Sie GetSection stattdessen für einen Nicht-Laufzeitvorgang. Diese Methode wird im angegebenen Abschnitt einer Konfigurationsdatei ausgeführt, die Sie mit 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 Umwandlungs exceptions zu vermeiden, sollten Sie einen bedingten Umwandlungsvorgang wie den as Operator in C# verwenden.

Weitere Informationen

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 Name des Konfigurationsabschnitts.

path
String

Der Pfad der virtuellen Konfigurationsdatei.

Gibt zurück

Das angegebene Konfigurationsabschnittsobjekt oder null wenn der Abschnitt nicht vorhanden ist. Denken Sie daran, dass Sicherheitseinschränkungen bei der Verwendung GetSection(String, String) als Laufzeitvorgang bestehen. Möglicherweise können Sie nicht zur Laufzeit auf einen Abschnitt für Änderungen zugreifen.

Ausnahmen

Die Methode wird von außerhalb einer Webanwendung aufgerufen.

Eine gültige Konfigurationsdatei konnte nicht geladen werden.

Beispiele

Das folgende Beispiel zeigt, wie Sie mit der GetSection Methode auf Konfigurationsinformationen zugreifen.

Note

In diesem Beispiel wird die Verwendung der GetSection Methode zum Abrufen eines ConfigurationSection Objekts aus einer angegebenen Konfigurationsdatei veranschaulicht.


// 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.

Vorsicht

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 die Überladung, die einen Pfad verwendet, auch die Konfigurationseinstellungen auf Anwendungsebene für die aktuell ausgeführte Anwendung zurückgibt, wenn sich der angegebene Pfad außerhalb der aktuellen Anwendung befindet.

Diese Methode kann nicht innerhalb einer Clientanwendung aufgerufen werden.

Wenn Sie den Konfigurationsabschnitt aus der Konfigurationsdatei abrufen möchten, die sich auf der aktuellen Verzeichnisebene der Webanwendung befindet, verwenden Sie die GetSection Methode.

Note

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 mit 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 Umwandlungs exceptions zu vermeiden, sollten Sie einen bedingten Umwandlungsvorgang wie den as Operator in C# verwenden.

Weitere Informationen

Gilt für: