WebConfigurationManager.GetSection Method

Definition

Извлекает указанный раздел конфигурации из текущего файла конфигурации по умолчанию веб-приложения.Retrieves the specified configuration section from the current Web application's default configuration file.

Overloads

GetSection(String)

Извлекает указанный раздел конфигурации из текущего файла конфигурации веб-приложения.Retrieves the specified configuration section from the current Web application's configuration file.

GetSection(String, String)

Извлекает указанный раздел конфигурации из файла конфигурации веб-приложения в заданном расположении.Retrieves the specified configuration section from the Web application's configuration file at the specified location.

GetSection(String)

Извлекает указанный раздел конфигурации из текущего файла конфигурации веб-приложения.Retrieves the specified configuration section from the current Web application's configuration file.

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

Parameters

sectionName
String

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

Returns

Object

Указанный объект раздела конфигурации или null, если раздел не существует.The specified configuration section object, or null if the section does not exist. Следует учесть наличие ограничений безопасности по использованию GetSection(String) в качестве операций времени выполнения.Remember that security restrictions exist on the use of GetSection(String) as a runtime operation. Например, во время выполнения доступ к разделу с целью изменения может отсутствовать.You might not be able to access a section at run time for modifications, for example.

Exceptions

Верный файл конфигурации не может быть загружен.A valid configuration file could not be loaded.

Examples

В примерах этого раздела показано, как получить доступ к сведениям о конфигурации с помощью метода GetSection.The examples in this section show how to access configuration information with the GetSection method.

В следующем примере показан раздел, к которому можно получить доступ из веб-приложения или из консольного приложения.The following example shows a section that can be accessed from either a Web application or a console application.

Note

В этом примере показано, как использовать метод GetWebApplicationSection для получения объекта ConfigurationSection из файла конфигурации.This example demonstrates how to use the GetWebApplicationSection method to get a ConfigurationSection object from a configuration file.


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


Remarks

Если в веб-приложении вызывается GetSection, он получает раздел из файла конфигурации, выбранного системой в соответствии с иерархией конфигурации веб-приложения.If GetSection is called from within a Web application, it gets the section from the configuration file selected by the system according to the Web-application configuration hierarchy.

Caution

Если в приложении используется протокол, отличный от протокола HTTP, то используется перегрузка GetSection, которая принимает имя раздела и путь в списке параметров.If your application uses a different protocol than HTTP, the GetSection overload that takes both a section name and a path in its parameter list is the one to use. Необходимо указать путь к файлу конфигурации, так как система не может делать никаких предположений относительно уровня иерархии конфигурации.You must specify the configuration file path because the system cannot make any assumptions about the configuration hierarchy level. При использовании перегрузки GetSection, которая принимает только имя раздела, система всегда будет пытаться вернуть параметры конфигурации на уровне приложения.If you use the GetSection overload that takes only a section name, the system will always attempt to return the configuration settings at the application level. Обратите внимание, что если указанный путь находится за пределами текущего приложения, перегрузка, которая принимает путь, также вернет параметры конфигурации уровня приложения для выполняющегося приложения.Note, though, that if its specified path is outside of the current application, the overload that takes a path will also return the application-level configuration settings for the currently running application.

Можно вызвать GetSection в клиентском приложении.You could call GetSection from within a client application. В этом случае он получает раздел по умолчанию из файла конфигурации, выбранного системой в соответствии с иерархией конфигурации клиента.In this case, it gets the default section from the configuration file selected by the system according to the client configuration hierarchy. Как правило, это файл Machine. config, если на месте нет сопоставленной конфигурации.Usually, this is the Machine.config file, unless you have a mapped configuration in place. Для сопоставления файлов конфигурации обратитесь к методам сопоставления, описанным далее.For mapping configuration files, refer to the mapping methods described next.

Note

Метод GetSection — это метод времени выполнения, который работает с разделом файла конфигурации на уровне иерархии, в котором выполняется приложение.The GetSection method is a run-time method that operates on the section of a configuration file at the hierarchy level in which the application runs. Для операции, не являющейся операцией времени выполнения, используйте вместо нее GetSection.For a non-run-time operation, use GetSection instead. Этот метод работает с указанным разделом файла конфигурации, полученным с помощью одного из перегруженных методов для открытия файла конфигурации, OpenWebConfiguration.This method operates on the specified section of a configuration file that you obtain using one of the overloaded methods for opening a configuration file, OpenWebConfiguration.

Notes to Inheritors

Перед использованием возвращаемое значение должно быть приведено к ожидаемому типу конфигурации.The return value must be cast to the expected configuration type before use. Чтобы избежать возможных исключений приведения, следует использовать операцию условного приведения, например оператор as в C# или функции в Visual Basic.To avoid possible casting exceptions, you should use a conditional casting operation like the as operator in C# or the function in Visual Basic.

See also

GetSection(String, String)

Извлекает указанный раздел конфигурации из файла конфигурации веб-приложения в заданном расположении.Retrieves the specified configuration section from the Web application's configuration file at the specified location.

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

Parameters

sectionName
String

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

path
String

Виртуальный путь файла конфигурации.The virtual configuration file path.

Returns

Object

Указанный объект раздела конфигурации или null, если раздел не существует.The specified configuration section object, or null if the section does not exist. Следует учесть наличие ограничений безопасности по использованию GetSection(String, String) в качестве операций времени выполнения.Remember that security restrictions exist on the use of GetSection(String, String) as a run-time operation. Например, во время выполнения доступ к разделу с целью изменения может отсутствовать.You might not be able to access a section at run time for modifications, for instance.

Exceptions

Метод вызывается не из веб-приложения.The method is called from outside a Web application.

Верный файл конфигурации не может быть загружен.A valid configuration file could not be loaded.

Examples

В следующем примере показано, как получить доступ к сведениям о конфигурации с помощью метода GetSection.The following example shows how to access configuration information with the GetSection method.

Note

В этом примере показано, как использовать метод GetSection для получения объекта ConfigurationSection из указанного файла конфигурации.This example demonstrates how to use the GetSection method to get a ConfigurationSection object from a specified configuration file.


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


Remarks

Если в веб-приложении вызывается GetSection, он получает раздел из файла конфигурации, определенного по указанному пути в иерархии конфигурации.If GetSection is called from within a Web application, it gets the section from the configuration file defined by the specified path in the configuration hierarchy.

Caution

Если в приложении используется протокол, отличный от протокола HTTP, то используется перегрузка GetSection, которая принимает имя раздела и путь в списке параметров.If your application uses a different protocol than HTTP, the GetSection overload that takes both a section name and a path in its parameter list is the one to use. Необходимо указать путь к файлу конфигурации, так как система не может делать никаких предположений относительно уровня иерархии конфигурации.You must specify the configuration file path because the system cannot make any assumptions about the configuration hierarchy level. При использовании перегрузки GetSection, которая принимает только имя раздела, система всегда будет пытаться вернуть параметры конфигурации на уровне приложения.If you use the GetSection overload that takes only a section name, the system will always attempt to return the configuration settings at the application level. Обратите внимание, что если указанный путь находится за пределами текущего приложения, перегрузка, которая принимает путь, также вернет параметры конфигурации уровня приложения для выполняющегося приложения.Note, though, that if its specified path is outside of the current application, the overload that takes a path will also return the application-level configuration settings for the currently running application.

Этот метод не может быть вызван из клиентского приложения.This method cannot be called from within a client application.

Если требуется получить раздел конфигурации из файла конфигурации, расположенного на текущем уровне каталога веб-приложений, используйте метод GetSection.If you want to retrieve the configuration section from the configuration file located at the current Web application directory level, use the GetSection method.

Note

Метод GetSection — это метод времени выполнения, работающий в разделе файла конфигурации на уровне иерархии, в котором выполняется приложение.The GetSection method is a run-time method operating on the section of a configuration file at the hierarchy level in which the application runs. Для операции, не являющейся операцией времени выполнения, используйте вместо нее GetSection.For a non-run-time operation, use GetSection instead. Этот метод работает с указанным разделом файла конфигурации, полученным с помощью одного из методов файла конфигурации open.This method operates on the specified section of a configuration file that you obtain using one of the open configuration file methods.

Notes to Inheritors

Перед использованием возвращаемое значение должно быть приведено к ожидаемому типу конфигурации.The return value must be cast to the expected configuration type before use. Чтобы избежать возможных исключений приведения, следует использовать операцию условного приведения, например оператор as в C# или функции в Visual Basic.To avoid possible casting exceptions, you should use a conditional casting operation like the as operator in C# or the function in Visual Basic.

See also

Applies to