WebConfigurationManager.GetSection Yöntem

Tanım

Geçerli Web uygulamasının varsayılan yapılandırma dosyasından belirtilen yapılandırma bölümünü alır.

Aşırı Yüklemeler

GetSection(String)

Geçerli Web uygulamasının yapılandırma dosyasından belirtilen yapılandırma bölümünü alır.

GetSection(String, String)

Belirtilen konumdaki Web uygulamasının yapılandırma dosyasından belirtilen yapılandırma bölümünü alır.

GetSection(String)

Geçerli Web uygulamasının yapılandırma dosyasından belirtilen yapılandırma bölümünü alır.

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

Parametreler

sectionName
String

Yapılandırma bölümü adı.

Döndürülenler

Object

Belirtilen yapılandırma bölümü nesnesi veya null bölüm yoksa. Çalışma zamanı işlemi olarak kullanımında GetSection(String) güvenlik kısıtlamaları olduğunu unutmayın. Örneğin, değişiklikler için çalışma zamanında bir bölüme erişemeyebilirsiniz.

Özel durumlar

Geçerli bir yapılandırma dosyası yüklenemedi.

Örnekler

Bu bölümdeki örnekler, yöntemiyle yapılandırma bilgilerine nasıl erişeceğini GetSection gösterir.

Aşağıdaki örnekte bir Web uygulamasından veya konsol uygulamasından erişilebilen bir bölüm gösterilmektedir.

Not

Bu örnekte, bir yapılandırma dosyasından GetWebApplicationSection nesne almak ConfigurationSection için yönteminin nasıl kullanılacağı gösterilmektedir.


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

Açıklamalar

Bir Web uygulamasının içinden çağrılırsa GetSection , bölümü Web uygulaması yapılandırma hiyerarşisine göre sistem tarafından seçilen yapılandırma dosyasından alır.

Dikkat

Uygulamanız HTTP'den farklı bir protokol kullanıyorsa, GetSection parametre listesinde hem bölüm adını hem de yolu alan aşırı yükleme, kullanılacak olandır. Sistem yapılandırma hiyerarşi düzeyi hakkında herhangi bir varsayımda bulunamadığından yapılandırma dosyası yolunu belirtmeniz gerekir. Yalnızca bölüm adı alan aşırı yüklemeyi kullanırsanız GetSection , sistem her zaman yapılandırma ayarlarını uygulama düzeyinde döndürmeyi dener. Ancak, belirtilen yolu geçerli uygulamanın dışındaysa, yolu alan aşırı yüklemenin o anda çalışan uygulamanın uygulama düzeyi yapılandırma ayarlarını da döndüreceğini unutmayın.

bir istemci uygulamasının içinden çağrısı GetSection gerçekleştirebilirsiniz. Bu durumda, istemci yapılandırma hiyerarşisine göre sistem tarafından seçilen yapılandırma dosyasından varsayılan bölümü alır. Eşlenmiş bir yapılandırmanız yoksa, bu genellikle Machine.config dosyasıdır. Yapılandırma dosyalarını eşlemek için, daha sonra açıklanan eşleme yöntemlerine bakın.

Not

GetSection yöntemi, uygulamanın çalıştığı hiyerarşi düzeyinde bir yapılandırma dosyasının bölümünde çalışan bir çalışma zamanı yöntemidir. Çalışma zamanı olmayan bir işlem için bunun yerine kullanın GetSection . Bu yöntem, yapılandırma dosyasını açmak için aşırı yüklenmiş yöntemlerden birini kullanarak aldığınız bir yapılandırma dosyasının OpenWebConfigurationbelirtilen bölümünde çalışır.

Devralanlara Notlar

Dönüş değeri, kullanılmadan önce beklenen yapılandırma türüne yayınlanmalıdır. Olası atama özel durumlarını önlemek için C# içindeki işleç gibi as bir koşullu atama işlemi kullanmanız gerekir.

Ayrıca bkz.

Şunlara uygulanır

GetSection(String, String)

Belirtilen konumdaki Web uygulamasının yapılandırma dosyasından belirtilen yapılandırma bölümünü alır.

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

Parametreler

sectionName
String

Yapılandırma bölümü adı.

path
String

Sanal yapılandırma dosyası yolu.

Döndürülenler

Object

Belirtilen yapılandırma bölümü nesnesi veya null bölüm yoksa. Çalışma zamanı işlemi olarak kullanımıyla GetSection(String, String) ilgili güvenlik kısıtlamalarının mevcut olduğunu unutmayın. Örneğin, değişiklikler için çalışma zamanında bir bölüme erişemeyebilirsiniz.

Özel durumlar

yöntemi bir Web uygulamasının dışından çağrılır.

Geçerli bir yapılandırma dosyası yüklenemedi.

Örnekler

Aşağıdaki örnek, yöntemiyle yapılandırma bilgilerine nasıl erişeceklerini GetSection gösterir.

Not

Bu örnekte, belirtilen yapılandırma dosyasından GetSection nesne ConfigurationSection almak için yönteminin nasıl kullanılacağı gösterilmektedir.


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

Açıklamalar

Bir Web uygulamasının içinden çağrılırsa GetSection , bölümü yapılandırma hiyerarşisinde belirtilen yol tarafından tanımlanan yapılandırma dosyasından alır.

Dikkat

Uygulamanız HTTP'den farklı bir protokol kullanıyorsa, GetSection parametre listesinde hem bölüm adını hem de yolu alan aşırı yükleme, kullanılacak olandır. Sistem yapılandırma hiyerarşi düzeyi hakkında herhangi bir varsayımda bulunamadığından yapılandırma dosyası yolunu belirtmeniz gerekir. Yalnızca bölüm adı alan aşırı yüklemeyi kullanırsanız GetSection , sistem her zaman yapılandırma ayarlarını uygulama düzeyinde döndürmeyi dener. Ancak, belirtilen yolu geçerli uygulamanın dışındaysa, yolu alan aşırı yüklemenin o anda çalışan uygulamanın uygulama düzeyi yapılandırma ayarlarını da döndüreceğini unutmayın.

Bu yöntem istemci uygulamasının içinden çağrılamaz.

Yapılandırma bölümünü geçerli Web uygulaması dizin düzeyinde bulunan yapılandırma dosyasından almak istiyorsanız yöntemini kullanın GetSection .

Not

GetSection yöntemi, uygulamanın çalıştığı hiyerarşi düzeyinde bir yapılandırma dosyasının bölümünde çalışan bir çalışma zamanı yöntemidir. Çalışma zamanı olmayan bir işlem için bunun yerine kullanın GetSection . Bu yöntem, yapılandırma dosyası yöntemlerinden birini kullanarak aldığınız bir yapılandırma dosyasının open belirtilen bölümünde çalışır.

Devralanlara Notlar

Dönüş değeri, kullanılmadan önce beklenen yapılandırma türüne yayınlanmalıdır. Olası atama özel durumlarını önlemek için C# içindeki işleç gibi as bir koşullu atama işlemi kullanmanız gerekir.

Ayrıca bkz.

Şunlara uygulanır