Язык

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

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

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

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

Исключения

Не удалось загрузить допустимый файл конфигурации.

Примеры

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

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

Note

В этом примере показано, как использовать 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, если вы не создали сопоставленную конфигурацию. Сведения о файлах конфигурации сопоставления см. в следующих методах сопоставления.

Note

Метод 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

Путь к файлу виртуальной конфигурации.

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

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

Исключения

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

Не удалось загрузить допустимый файл конфигурации.

Примеры

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

Note

В этом примере показано, как использовать 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 этот метод.

Note

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

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

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

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

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