Поделиться через


Элемент section для элемента configSections (схема общих параметров)

Определяет связь между обработчиком раздела конфигурации и элементом конфигурации.

<section 
   name="section name"
   type="configuration section handler class, assembly file name, version, culture, public key token"
   allowDefinition= "Everywhere|MachineOnly|MachineToApplication|MachineToWebRoot" 
   allowLocation="True|False" 
   restartOnExternalChanges="True|False" 
/>

Атрибуты и элементы

В следующих разделах описаны атрибуты, дочерние и родительские элементы.

Атрибуты

Атрибут

Описание

allowDefinition

Необязательный атрибут элемента Enum.

Применим только к приложениям ASP.NET.

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

Этот атрибут может принимать одно из следующих значений (определенных в перечислении ConfigurationAllowDefinition) в порядке уменьшения области.

ЗначениеОписание
Everywhere Разрешает настройку раздела в следующем любом файле конфигурации или каталоге.
  • Machine.config.

  • Корневой файл Web.config.

  • Файл Web.config для приложения.

  • Виртуальный каталог.

  • Физический вложенный каталог в приложении.

Если атрибут allowDefinition не используется, предполагается Everywhere.Это значение по умолчанию.
MachineToApplication Разрешает настройку раздела в одном из следующих файлов.
  • Machine.config.

  • Корневой файл Web.config.

  • Файл Web.config для приложения.

При этом исключаются файлы Web.config в виртуальных каталогах или физических вложенных каталогах в приложении.
MachineToWebRoot Разрешает настройку раздела в одном из следующих файлов.
  • Machine.config.

  • Корневой файл Web.config.

Файл Machine.config и корневой файл Web.config расположены в каталоге %SystemRoot%\Microsoft.NET\Framework\номер_версии\CONFIG.
MachineOnly Разрешает настройку раздела только в файле Machine.config, расположенном в каталоге %SystemRoot%\Microsoft.NET\Framework\номер_версии\CONFIG.

allowExeDefinition

Необязательный атрибут Enum.

Применим только к клиентским приложениям .NET Framework.

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

Этот атрибут может принимать одно из следующих значений (определенных в перечислении ConfigurationAllowExeDefinition) в порядке уменьшения области.

ЗначениеОписание
MachineToApplication Разрешает настройку раздела в одном из следующих файлов.
  • Machine.config.

  • Конфигурация приложения.

MachineToRoamingUser
MachineToLocalUser
MachineOnly Разрешает настройку раздела только в файле Machine.config, расположенном в каталоге %SystemRoot%\Microsoft.NET\Framework\номер_версии\CONFIG.

allowLocation

Необязательный атрибут Boolean.

Применим только к приложениям ASP.NET.

Определяет, может ли раздел использоваться в элементе location.

Значение по умолчанию — True.

name

Обязательный атрибут String.

Задает имя раздела конфигурации или элемента, связанного с обработчиком раздела конфигурации, который указан в атрибуте type. Это имя элемента в том виде, как оно отображается в области параметров раздела в файле конфигурации.

restartOnExternalChanges

Необязательный атрибут Boolean.

Не применяется к приложениям ASP.NET.

Определяет, следует ли перезапустить приложение при изменении данных конфигурации для раздела.

type

Обязательный атрибут String.

Задает имя класса обработчика раздела конфигурации, обрабатывающего параметры конфигурации в разделе или элементе, который указан в атрибуте name. Используйте следующий формат.

type="полное_имя_класса, имя_файла_сборки, версия, язык_и_региональные_параметры, токен_открытого_ключа"

Определение должно совпадать со ссылкой на сборку. Например, если номер версии в следующем примере синтаксиса не совпадает со сборкой, возникает ошибка.

type="MyConfigSectionHandler.MyHandler,MyCustomConfigurationHandler,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null"

Файл сборки должен находиться в том же каталоге приложения, что и файл Web.config, определяющий его. В случае с корневыми файлами Web.config или Machine.config файл сборки должен быть в каталоге %SystemRoot%\Microsoft.NET\Framework\версия.

Дочерние элементы

Отсутствует.

Родительские элементы

Элемент

Описание

configuration

Задает обязательный корневой элемент любого файла конфигурации, который используется средой CLR и приложениями .NET Framework.

configSections

Задает раздел конфигурации и объявления пространств имен.

sectionGroup

Определяет связь между обработчиком раздела конфигурации и разделом конфигурации.

Заметки

Элемент section связывает обработчика раздела конфигурации с элементом или разделом конфигурации. Это необходимо, поскольку ASP.NET не делает никаких предположений о способах обработки параметров в файле конфигурации. Вместо этого ASP.NET передает обработку данных о конфигурации обработчикам раздела конфигурации. Каждый элемент section определяет раздел или элемент конфигурации и связанный класс, производный от класса ConfigurationSection, обрабатывающего раздел или элемент конфигурации. Элементы section могут быть логически сгруппированы в элементы sectionGroup, что необходимо для их упорядочения и предотвращения конфликтов имен. Элементы section и sectionGroup находятся в элементе configSections.

Настройки по умолчанию

Разделы конфигурации для элементов конфигурации .NET Framework определяются в файле Machine.config. Их слишком много, поэтому в данном разделе они не указываются. В приведенном ниже фрагменте файла Machine.config определяется обработчик раздела конфигурации для элемента authentication раздела system.web. Затем определяются параметры конфигурации для элемента authentication.

Если обработчик раздела конфигурации не связан с элементом конфигурации, ASP.NET выдает ошибку сервера: "Неопознанный раздел конфигурации имя_элемента".

<configuration>
    <configSections>
        <sectionGroup name="system.web" type="System.Web.Configuration.SystemWebSectionGroup, System.Web, Version=%ASSEMBLY_VERSION%, Culture=neutral, PublicKeyToken=%MICROSOFT_PUBLICKEY%">
            <section name="authentication" type="System.Web.Configuration.AuthenticationSection, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication" />
            <!-- Other system.web sections -->
        </sectionGroup>
        <!-- Other configuration sections -->
    </configSections>

    <system.web>
        <authentication mode="Windows">
            <forms name=".ASPXAUTH" 
                   loginUrl="login.aspx" defaultUrl="default.aspx" 
                   protection="All" 
                   timeout="30" 
                   path="/" 
                   requireSSL="False" 
                   slidingExpiration="True" 
                   cookieless="UseCookies" 
                   domain="" 
                   enableCrossAppRedirects="False">
                <credentials passwordFormat="SHA1" />
            </forms>
            <passport redirectUrl="internal" />
        </authentication>
        <!-- Other system.web elements -->
    </system.web>
    <!-- Other configuration settings -->
</configuration>

Пример

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

<configuration>

   <configSections>
      <section name="sampleSection"
               type="System.Configuration.SingleTagSectionHandler" />
   </configSections>

   <sampleSection setting1="Value1" 
                  setting2="value two" 
                  setting3="third value" />

</configuration>

Сведения об элементе

Обработчик раздела конфигурации

Не применяется.

Элемент конфигурации

ConfigurationSection

Настраиваемые расположения

Machine.config

Файл Web.config корневого уровня

Файл Web.config уровня приложения

Файл Web.config уровня виртуального или физического каталога

Требования

Microsoft IIS версии 5.0, 5.1 или 6.0

.NET Framework версии 1.0, 1.1 или 2.0

Microsoft Visual Studio 2003 или Visual Studio 2005

См. также

Ссылки

Элемент configSections (схема общих параметров)

Элемент sectionGroup для элемента configSections (схема общих параметров)

Элемент clear для элемента configSections (схема общих параметров)

Элемент remove для элемента configSections (схема общих параметров)

Элемент configuration (схема общих параметров)

Основные понятия

Иерархия и наследование файла конфигурации ASP.NET

Изменение файлов конфигурации ASP.NET

Сценарии конфигурации ASP.NET

Другие ресурсы

Общие параметры конфигурации (ASP.NET)

Параметры конфигурации ASP.NET

Файлы конфигурации ASP.NET

Администрирование веб-сайта ASP.NET

Конфигурационный API-интерфейс настройки ASP.NET