WebConfigurationManager.GetSection Метод

Определение

Извлекает указанный раздел конфигурации из текущего файла конфигурации по умолчанию веб-приложения.

Перегрузки

GetSection(String)

Извлекает указанный раздел конфигурации из текущего файла конфигурации веб-приложения.

GetSection(String, String)

Извлекает указанный раздел конфигурации из файла конфигурации веб-приложения в заданном расположении.

GetSection(String)

Извлекает указанный раздел конфигурации из текущего файла конфигурации веб-приложения.

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

Параметры

sectionName
String

Имя раздела конфигурации.

Возвращаемое значение

Object

Указанный объект раздела конфигурации или null, если раздел не существует. Следует учесть наличие ограничений безопасности по использованию GetSection(String) в качестве операций времени выполнения. Например, во время выполнения доступ к разделу с целью изменения может отсутствовать.

Исключения

Верный файл конфигурации не может быть загружен.

Примеры

В примерах в этом разделе показано, как получить доступ к сведениям о конфигурации GetSection с помощью метода.

В следующем примере показан раздел, к которому можно получить доступ из веб-приложения или консольного приложения.

Примечание

В этом примере показано, как использовать GetWebApplicationSection метод для получения ConfigurationSection объекта из файла конфигурации.


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

Комментарии

Если GetSection вызывается из веб-приложения, он получает раздел из файла конфигурации, выбранного системой в соответствии с иерархией конфигурации веб-приложения.

Внимание!

Если приложение использует протокол, отличный от ПРОТОКОЛА HTTP, перегрузка GetSection , принимающая имя раздела и путь в списке параметров, будет использоваться. Необходимо указать путь к файлу конфигурации, так как система не может сделать какие-либо предположения об уровне иерархии конфигурации. Если используется перегрузка GetSection , которая принимает только имя раздела, система всегда пытается вернуть параметры конфигурации на уровне приложения. Обратите внимание, что если указанный путь находится вне текущего приложения, перегрузка, принимаюющая путь, также возвращает параметры конфигурации на уровне приложения для текущего работающего приложения.

Вы можете вызвать GetSection из клиентского приложения. В этом случае он получает раздел по умолчанию из файла конфигурации, выбранного системой в соответствии с иерархией конфигурации клиента. Как правило, это файл Machine.config, если не настроена сопоставленная конфигурация. Сведения о файлах конфигурации сопоставления см. в описании методов сопоставления, описанных далее.

Примечание

Метод GetSection — это метод времени выполнения, который работает с разделом файла конфигурации на уровне иерархии, в котором выполняется приложение. Для нерабовременной операции используйте GetSection вместо нее. Этот метод работает с указанным разделом файла конфигурации, который вы получаете с помощью одного из перегруженных методов открытия файла OpenWebConfigurationконфигурации.

Примечания для тех, кто наследует этот метод

Возвращаемое значение должно быть приведено к ожидаемому типу конфигурации перед использованием. Чтобы избежать возможных исключений приведения, следует использовать операцию условного приведения, например as оператор в C#.

См. также раздел

Применяется к

GetSection(String, String)

Извлекает указанный раздел конфигурации из файла конфигурации веб-приложения в заданном расположении.

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

Параметры

sectionName
String

Имя раздела конфигурации.

path
String

Виртуальный путь файла конфигурации.

Возвращаемое значение

Object

Указанный объект раздела конфигурации или null, если раздел не существует. Следует учесть наличие ограничений безопасности по использованию GetSection(String, String) в качестве операций времени выполнения. Например, во время выполнения доступ к разделу с целью изменения может отсутствовать.

Исключения

Метод вызывается не из веб-приложения.

Верный файл конфигурации не может быть загружен.

Примеры

В следующем примере показано, как получить доступ к сведениям о конфигурации GetSection с помощью метода.

Примечание

В этом примере показано, как использовать GetSection метод для получения ConfigurationSection объекта из указанного файла конфигурации.


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

Комментарии

Если GetSection вызывается из веб-приложения, он получает раздел из файла конфигурации, определенного указанным путем в иерархии конфигурации.

Внимание!

Если приложение использует протокол, отличный от ПРОТОКОЛА HTTP, перегрузка GetSection , принимающая имя раздела и путь в списке параметров, будет использоваться. Необходимо указать путь к файлу конфигурации, так как система не может сделать какие-либо предположения об уровне иерархии конфигурации. Если используется перегрузка GetSection , которая принимает только имя раздела, система всегда пытается вернуть параметры конфигурации на уровне приложения. Обратите внимание, что если указанный путь находится вне текущего приложения, перегрузка, принимаюющая путь, также возвращает параметры конфигурации на уровне приложения для текущего работающего приложения.

Этот метод нельзя вызывать из клиентского приложения.

Если вы хотите получить раздел конфигурации из файла конфигурации, расположенного на текущем уровне каталога веб-приложения, используйте GetSection этот метод.

Примечание

Метод GetSection — это метод времени выполнения, работающий в разделе файла конфигурации на уровне иерархии, в котором выполняется приложение. Для нерабовременной операции используйте GetSection вместо нее. Этот метод работает с указанным разделом файла конфигурации, который вы получаете с помощью одного из open методов файла конфигурации.

Примечания для тех, кто наследует этот метод

Возвращаемое значение должно быть приведено к ожидаемому типу конфигурации перед использованием. Чтобы избежать возможных исключений приведения, следует использовать операцию условного приведения, например as оператор в C#.

См. также раздел

Применяется к