Опубликован: 24.01.2007 | Доступ: свободный | Студентов: 1253 / 82 | Оценка: 4.37 / 4.17 | Длительность: 14:27:00
ISBN: 978-5-94774-627-3
Лекция 3:

Настроечные параметры ASP.NET

< Лекция 2 || Лекция 3: 123 || Лекция 4 >
Аннотация: Лекция посвящена первым двум разделам настроечных файлов: разделам <configSections> и <appSettings>.

Во второй части описываются все настроечные параметры ASP.NET, используемые для настройки приложений. Лекция 3 посвящена первым двум разделам настроечных файлов: разделам <configSections> и <appSettings>. "Лекция 4" описывает разделы и параметры, непосредственно связанные с ASP.NET, включая разделы и параметры из группы разделов System.Web. "Лекция 5" описывает разделы и параметры, относящиеся к Microsoft Mobile Internet Toolkit, "лекция 6" – параметры для остальных пространств имен Microsoft .NET Framework, "лекция 7" – параметры Common Language Runtime. В "лекции 8" рассказывается о параметрах, используемых при работе с инструментом администрирования IIS.

Раздел настроек и параметры приложений

В "лекции 1" вы уже видели раздел <configSections>, а здесь он описан более подробно. Также приведено описание раздела <appSettings>, используемого для добавления в настроечный файл дополнительных параметров и последующего доступа к этим параметрам из ваших приложений. Вы познакомитесь с разделами, параметрами и значениями для каждого раздела, узнаете, как использовать эти параметры на самых распространенных примерах. В данной лекции охвачены следующие вопросы.

  • <configSections>. Раздел содержит все объявления обработчиков разделов настроек (о них уже говорилось раньше), но теперь мы познакомимся с различными элементами, которые можно использовать в этом разделе.
  • <appSettings>. Раздел позволяет централизованно хранить различные параметры, а также используется для хранения и возврата строк пары ключ/значение. Вы узнаете, как хранить эти значения и как использовать их в приложении.

Работа с <configSections>

Раздел <configSections> содержит все объявления обработчиков разделов настроек. Обработчики разделов настроек – это классы .NET, которые интерпретируют параметры и значения, содержащиеся в разделах настроек. В разделе <configSections> можно объявить новый раздел, удалить раздел и даже все объявления разделов.

Объявление раздела

Первым элементом в разделе <configSections> является <section>. Этот элемент используется для объявления раздела настроек, используемого далее в настроечном файле. Ниже приведен синтаксис элемента <section>.

<section name="SectionName" type="ConfigurationHandler"
  allowLocation="true | false"
  allowDefinition="Everywhere | MachineOnly | MachineToApplication" />

Таблица 3.1 содержит список атрибутов элемента <section>.

Таблица 3.1. Табл. 3.1. Атрибуты <section>
Имя атрибута Значения атрибута
Name string Имя, которое используется для ссылки на данный раздел в настроечном файле. Это любое значение, которое не конфликтует с именем другого раздела, но в большинстве случаев для имени раздела применяется соглашение об именах Паскаля.
Type string Обработчик раздела настроек. Значение должно включать полную информацию о расположении класса в Global Assembly Cache.
AllowLocation true | false Определяет, может ли раздел использоваться в теге location. Значение true означает, что раздел может использоваться в теге location. Значение false означает, что раздел не может использоваться в теге location.
AllowDefinition Everywhere Позволяет разделу использоваться в любом типе настроечного файла.
MachineOnly Позволяет разделу использоваться только в файле machine.config.
MachineToApplication Позволяет разделу использоваться как в файле machine.config, так и в настроечном файле приложения.

Вот пример того, как добавлять раздел в настроечный файл.

<section name="runtime" type="System.Configuration.
  IgnoreSectionHandler, System, Version=1.0.330.0, Culture=neutral,
  PublicKeyToken=b77a5c561934e089" allowLocation="false" />

Здесь вы видите объявление раздела с именем runtime. Имя раздела, равное значению runtime, указано с помощью атрибута name. Атрибут type указывает на обработчик раздела настроек, который будет интерпретировать раздел, – System.Configuration.IgnoreSectionHandler.

Объявление группы разделов

Элемент <sectionGroup> объявляет группу разделов и объявления всех включенных в него разделов. Группа разделов – это логическое объединение нескольких разделов. В настроечных файлах каждое настраиваемое пространство имен будет иметь свою собственную группу разделов. Обычно файл machine.config содержит различные группы разделов, включая System.Web и System.Net. Если вы хотите включить для своего пространства имен несколько разделов настроек, то их нужно поместить в группу разделов. Ниже приведен синтаксис для объявления группы разделов.

<sectionGroup name="section group name" >
  <!-- Section declarations here -->
</sectionGroup>

В таблице 3.2 приведены значения атрибутов элемента <sectionGroup>.

Таблица 3.2. Атрибуты <sectionGroup>
Имя атрибута Значения атрибута
Name string. Имя группы разделов, обычно используется соглашение об именах Паскаля.

Следующий пример объявляет группу разделов System.Web и включает объявление раздела <httpRuntime>.

<sectionGroup name="System.Web">
  <section name="httpRuntime" type=
    "System.Web.Configuration.HttpRuntimeConfigurationHandler,
    System.Web, Version=1.0.3300.0, Culture=neutral,
    PublicKeyToken=b03f5f7f11d50a3a" />
</sectionGroup>

Далее в настроечном файле вы включите этот раздел в <sectionGroup>.

<system.web>
  <httpRuntime executionTimeout="5000" maxRequestLength="4096"
    useFullyQualifiedRedirectUrl="false" minFreeThreads="8"
    minLocalRequestFreeThreads="4" appRequestQueueLimit="100" />
</system.web>
Удаление раздела

Для удаления из вашего настроечного файла разделов или групп разделов используется элемент <remove>. Ниже приведен его синтаксис.

<remove name="section or section group name" />

В таблице 3.3 приведены значения атрибута элемента <remove>.

Таблица 3.3. Атрибут <remove>
Имя атрибута Значения атрибута
Name string. Имя раздела или группы разделов, которую нужно удалить.

Ниже показано, как нужно удалять объявление раздела, который наследуется из предыдущего настроечного файла.

<configSections>
  <remove name="httpRuntime" />
</configSections>

В примере удаляется раздел <httpRuntime> из группы <configSections>, что запретит настройку параметров httpRuntime в данном настроечном файле и всех настроечных файлах, наследуемых от него.

< Лекция 2 || Лекция 3: 123 || Лекция 4 >
Геннадий Щербаков
Геннадий Щербаков

В начале года получил код dreamspark  H4RQ9-QJ6FD-YJWJT-P6FVF-HGXQZ. При  его вводе- сообщение что он просрочен.