WebConfigurationManager.GetSection Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Belirtilen yapılandırma bölümünü geçerli Web uygulamasının varsayılan yapılandırma dosyasından alır.
Aşırı Yüklemeler
| Name | Description |
|---|---|
| GetSection(String) |
Belirtilen yapılandırma bölümünü geçerli Web uygulamasının yapılandırma dosyasından 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)
Belirtilen yapılandırma bölümünü geçerli Web uygulamasının yapılandırma dosyasından 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
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.
Note
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.
Caution
Uygulamanız HTTP'den farklı bir protokol kullanıyorsa, GetSection hem bölüm adını hem de parametre listesindeki bir 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, yol 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ğırabilirsiniz GetSection . 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 olmadığı sürece bu genellikle Machine.config dosyasıdır. Eşleme yapılandırma dosyaları için, daha sonra açıklanan eşleme yöntemlerine bakın.
Note
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 edindiğiniz bir yapılandırma dosyasının OpenWebConfigurationbelirtilen bölümünde çalışır.
Devralanlara Notlar
Dönüş değeri, kullanımdan ö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
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, 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
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 örnekte, yöntemiyle yapılandırma bilgilerine erişme gösterilmektedir GetSection .
Note
Bu örnekte, belirtilen bir 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şisindeki belirtilen yol tarafından tanımlanan yapılandırma dosyasından alır.
Caution
Uygulamanız HTTP'den farklı bir protokol kullanıyorsa, GetSection hem bölüm adını hem de parametre listesindeki bir 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, yol 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 bir 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 .
Note
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ımdan ö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.