Украина |
Введение в Web-сайты
Создание Web-сайта
В качестве упражнения создадим с помощью Visual Studio 2005 простой Web-сайт с именем MyFirstSite.
-
Выберите команду File/New/Web Site и заполните диалоговое окно мастера так (место размещения сайта выберите по своему усмотрению)
Мастер создаст все необходимые для начальной работы каталоги и файлы в местах, упомянутых ранее.
В панели Solution Explorer мы увидим файл разметки страницы Default.aspx и файл отделенного кода Default.aspx.cs (застраничный файл, фоновый файл поддержки), а также созданную особую папку App_Data
-
Вызовите в Solution Explorer на папке App_Data контекстное меню и выполните команду Delete (или выделите папку App_Data и нажмите клавишу Delete клавиатуры)
Оболочка удалит папку, которая в данный момент нам не нужна.
-
Запустите Проводник Windows и спуститесь в динамически созданный временный каталог C:\WINNT\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\myfirstsite
Мы видим, что оболочка создала три временных файла:
- .ccu - сериализованный набор объектов исходного кода (Code Compile Unit), которые можно скомпилировать
- .compiled - представляет собой текстовый .xml-файл, содержащий информацию для компилятора. Этот файл указывает, что на основе Web-страницы .aspx и файла отделенного кода .aspx.cs создан файл .ccu
- hash.web - содержит ключевое слово хэша Web-сайта для его кодирования
Теперь мы должны скомпилировать Web-сайт.
-
Выполните команду Build/Build Web Site и вновь посмотрите во временный каталог
Была создана DLL-библиотека .dll, содержащая собранный воедино код разметки и отделенный код, а также создан текстовый .xml-файл .compiled, который содержит настройки компилятора, примененные при создании DLL-библиотеки.
-
Добавьте к сайту новую страницу. Для этого выполните команду Website/Add New Item и настройте диалоговое окно мастера так
Теперь мы видим, что во временном каталоге среды выполнения опять появилась пара файлов для новой страницы
-
Еще раз соберите сайт, выполнив команду Build/Build Web Site
Новая страница Page2.aspx вместе с файлом отделенного (застраничного) кода Page2.aspx.cs была скомпилирована в отдельную DLL -библиотеку и был создан файл .xml -инструкция для компилятора
Компиляция страниц в отдельные .dll файлы позволяет использовать для создания каждой отдельной страницы свой язык программирования, поддерживаемый компилятором. На уровне DLL-библиотек это будет совместимый в целом код. Компилятор собирает в отдельную сборку как страницу со встроенным кодом, так и страницу с отделенным кодом.
Настройка параметров приложения через конфигурационные файлы
То, что включено в проект, после компиляции превращается в приложение, которое будет работать под управлением среды ASP.NET. Режим исполнения приложения определяется дополнительными параметрами среды, которые задаются в конфигурационных файлах. Конфигурационные файлы представляют собой текстовые файлы, написанные на языке XML.
Для настройки Web-сайтов используется иерархия конфигурационных файлов. На вершине этой иерархии стоит файл machine.config, который находится в системном каталоге
C:\WINNT\Microsoft.NET\Framework\v2.0.50727\CONFIG
Он определяет параметры среды исполнения .NET Framework в целом для всех типов приложений: консольных, оконных для рабочего стола, Web-приложений и библиотек классов. Часть из этих параметров являются глобальными для компьютера и не могут быть переопределены. Но некоторые могут переопределяться в файлах web.config, расположенных ниже по иерархической лестнице, причем, чем ближе к рабочим страницам находится файл, тем больший приоритет имеют его параметры.
Файл web.config, стоящий в иерархической лестнице сразу за файлом machine.config, находится в одном с ним каталоге. Далее следуют необязательные файлы: файл web.config, расположенный в корне web-дерева (каталог wwwroot в Inetpub ), затем web.config, расположенный в корне web-приложения (Website на этапе проектирования). Наивысший приоритет имеют конфигурационные файлы, размещенные в подчиненных каталогах приложения (если таковые имеются).
При первом запросе страницы сайта исполняющая среда запускает приложение и создает для него кэш настроек. Настройки формируются по следующей схеме:
- Сначала извлекаются параметры из файла CONFIG\machine.config
- Затем добавляются параметры из файла CONFIG\web.config, переопределяя одноименные параметры machine.config
- Если есть wwwroot\web.config, то из него извлекаются параметры с замещением ранее добавленных одноименных параметров
- Если приложение имеет свой файл web.config, то в кэш добавляются и оттуда параметры, замещая одноименные
- Если страница находится в подкаталоге и там же имеется свой файл настроек web.config, то его параметры добавляются в кэш и переопределяют ранее введенные одноименные настройки