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