WebConfigurationManager.GetSection Metodo

Definizione

Recupera la sezione di configurazione specificata dal file di configurazione predefinito dell'applicazione Web corrente.

Overload

Nome Descrizione
GetSection(String)

Recupera la sezione di configurazione specificata dal file di configurazione dell'applicazione Web corrente.

GetSection(String, String)

Recupera la sezione di configurazione specificata dal file di configurazione dell'applicazione Web nel percorso specificato.

GetSection(String)

Recupera la sezione di configurazione specificata dal file di configurazione dell'applicazione Web corrente.

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

Parametri

sectionName
String

Nome della sezione di configurazione.

Valori restituiti

Oggetto sezione di configurazione specificato oppure null se la sezione non esiste. Tenere presente che esistono restrizioni di sicurezza per l'uso di GetSection(String) come operazione di runtime. Ad esempio, potrebbe non essere possibile accedere a una sezione in fase di esecuzione per le modifiche.

Eccezioni

Impossibile caricare un file di configurazione valido.

Esempio

Gli esempi in questa sezione illustrano come accedere alle informazioni di configurazione con il GetSection metodo .

L'esempio seguente illustra una sezione accessibile da un'applicazione Web o da un'applicazione console.

Note

In questo esempio viene illustrato come utilizzare il GetWebApplicationSection metodo per ottenere un ConfigurationSection oggetto da un file di configurazione.


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

Commenti

Se GetSection viene chiamato dall'interno di un'applicazione Web, ottiene la sezione dal file di configurazione selezionato dal sistema in base alla gerarchia di configurazione dell'applicazione Web.

Attenzione

Se l'applicazione usa un protocollo diverso da HTTP, l'overload GetSection che accetta sia un nome di sezione che un percorso nel relativo elenco di parametri è quello da usare. È necessario specificare il percorso del file di configurazione perché il sistema non può fare ipotesi sul livello della gerarchia di configurazione. Se si usa l'overload GetSection che accetta solo un nome di sezione, il sistema tenterà sempre di restituire le impostazioni di configurazione a livello di applicazione. Si noti, tuttavia, che se il percorso specificato è esterno all'applicazione corrente, l'overload che accetta un percorso restituirà anche le impostazioni di configurazione a livello di applicazione per l'applicazione attualmente in esecuzione.

È possibile chiamare GetSection dall'interno di un'applicazione client. In questo caso, ottiene la sezione predefinita dal file di configurazione selezionato dal sistema in base alla gerarchia di configurazione client. In genere, si tratta del file Machine.config, a meno che non sia presente una configurazione mappata. Per i file di configurazione di mapping, vedere i metodi di mapping descritti di seguito.

Note

Il GetSection metodo è un metodo di runtime che opera sulla sezione di un file di configurazione a livello di gerarchia in cui viene eseguita l'applicazione. Per un'operazione non in fase di esecuzione, usare GetSection invece . Questo metodo opera sulla sezione specificata di un file di configurazione ottenuto utilizzando uno dei metodi di overload per aprire un file di configurazione, OpenWebConfiguration.

Note per gli eredi

Prima dell'uso, è necessario eseguire il cast del valore restituito al tipo di configurazione previsto. Per evitare possibili eccezioni di cast, è consigliabile usare un'operazione di cast condizionale come l'operatore as in C#.

Vedi anche

Si applica a

GetSection(String, String)

Recupera la sezione di configurazione specificata dal file di configurazione dell'applicazione Web nel percorso specificato.

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

Parametri

sectionName
String

Nome della sezione di configurazione.

path
String

Percorso del file di configurazione virtuale.

Valori restituiti

Oggetto sezione di configurazione specificato oppure null se la sezione non esiste. Tenere presente che esistono restrizioni di sicurezza per l'uso di GetSection(String, String) come operazione di runtime. Potrebbe non essere possibile accedere a una sezione in fase di esecuzione per le modifiche, ad esempio.

Eccezioni

Il metodo viene chiamato dall'esterno di un'applicazione Web.

Impossibile caricare un file di configurazione valido.

Esempio

Nell'esempio seguente viene illustrato come accedere alle informazioni di configurazione con il GetSection metodo .

Note

In questo esempio viene illustrato come utilizzare il GetSection metodo per ottenere un ConfigurationSection oggetto da un file di configurazione specificato.


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

Commenti

Se GetSection viene chiamato dall'interno di un'applicazione Web, ottiene la sezione dal file di configurazione definito dal percorso specificato nella gerarchia di configurazione.

Attenzione

Se l'applicazione usa un protocollo diverso da HTTP, l'overload GetSection che accetta sia un nome di sezione che un percorso nel relativo elenco di parametri è quello da usare. È necessario specificare il percorso del file di configurazione perché il sistema non può fare ipotesi sul livello della gerarchia di configurazione. Se si usa l'overload GetSection che accetta solo un nome di sezione, il sistema tenterà sempre di restituire le impostazioni di configurazione a livello di applicazione. Si noti, tuttavia, che se il percorso specificato è esterno all'applicazione corrente, l'overload che accetta un percorso restituirà anche le impostazioni di configurazione a livello di applicazione per l'applicazione attualmente in esecuzione.

Questo metodo non può essere chiamato dall'interno di un'applicazione client.

Se si desidera recuperare la sezione di configurazione dal file di configurazione che si trova a livello di directory dell'applicazione Web corrente, usare il GetSection metodo .

Note

Il GetSection metodo è un metodo di runtime che opera nella sezione di un file di configurazione a livello di gerarchia in cui viene eseguita l'applicazione. Per un'operazione non in fase di esecuzione, usare GetSection invece . Questo metodo opera sulla sezione specificata di un file di configurazione ottenuto utilizzando uno dei metodi del open file di configurazione.

Note per gli eredi

Prima dell'uso, è necessario eseguire il cast del valore restituito al tipo di configurazione previsto. Per evitare possibili eccezioni di cast, è consigliabile usare un'operazione di cast condizionale come l'operatore as in C#.

Vedi anche

Si applica a