Мониторинг обменных курсов валют
18c0693f

Иерархическая модель настроек


Как говорилось в лекции 1, модель настроек ASP.NET наследует параметры от сервера к приложению при помощи иерархической модели. Благодаря иерархической модели можно указать параметры в файле machine.config или web.config родительского приложения, и эти параметры будут переданы во все дочерние приложения. Дочерние приложения наследуют настройки от родительских приложений, и все приложения наследуют настройки из файла machine.config. Вы можете указать параметры для всего сервера, одного или нескольких приложений, одной или нескольких директорий и даже одного файла. При наследовании настроечных параметров используются следующие правила.

Для наглядной демонстрации правил наследования давайте взглянем на сценарий, включающий несколько директорий и приложений. Для этого примера используются три приложения: App1, App2 и App3. На рисунке 2.1 показана виртуальная структура этих приложений.

Дополнительная информация. Виртуальная структура приложений – это структура, представленная при помощи инструмента администрирования IIS. Эта структура не связана с физическим расположением директорий и просто показывает, как вы настраиваете приложения в IIS.


Рис. 2.1.  Виртуальная структура приложений

На рисунке 2.1 App1 и App3 – это корневые приложения, а App2 – дочернее приложение App1.

Дополнительная информация. App3 в IIS представляет собой виртуальную директорию.
Виртуальная директория – это указатель из IIS на реальную физическую директорию на диске. Остальные приложения не являются виртуальными директориями, так как в физической структуре они находятся в одном и том же месте wwwroot, как и в виртуальной структуре.

Наследование в иерархической модели сначала берет во внимание виртуальную структуру, а затем – физическую структуру приложений. На рисунке 2.2 показана физическая структура приложений. Мы видим, что App1 – это поддиректория в директории wwwroot, а App2 и App3 –поддиректории App1. SubDir также является поддиректорией App1, но не является приложением или виртуальной директорией в IIS.

  1. Включите трассировку в файле machine.config на сервере, следуя шагам, описанным в разделе "Редактирование настроечных файлов" в лекции 1. Сделав это изменение, вы включите трассировку для всех приложений и файлов .aspx на этом сервере.
  2. Отключите трассировку в файле web.config для App1 – первого веб-приложения.



Рис. 2.2.  Физическая структура приложений

При доступе к указанным URL вы увидите следующие результаты. В этом примере в качестве имени сайта взято http://www.northwindtraders.com/. При тестировании замените его именем вашего сайта.

Замечание. Заметили интересную особенность? Одна директория или приложение могут иметь несколько вариантов настроечных параметров в зависимости от того, по какому URL производится доступ к этому ресурсу.

URL ресурса определяет, какие настроечные параметры будет наследовать ресурс. Другими словами, одни и те же ресурсы наследуют различные настроечные параметры в зависимости от того, какой URL используется для доступа к ним. Поняв то, как настроечные параметры наследуются от сервера к приложениям, попробуем указать, к чему относятся настроечные параметры.





Самый выгодный курс обмена валюты