Freigeben über


WebConfigurationManager.GetSection Methode

Definition

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

Object

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

Object

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.

Siehe auch

Gilt für