ского интерфейса (Щ) нетрудно благодаря поддержке в ASP.NET отделен- ного кода (code-behind). Но иногда сделать это совсем не просто. Так, к ASPX-файлу могли быть добавлены блоки серверного сценария (на С# или Visual Basic). Хотя для развертывания приложения исходный код на С# или Visual Basic не нужен, вам понадобятся ASPX-файлы (Web-фор- мы), которые тоже могут содержать код. Это же относится к файлам типа ASCX (пользовательские элементы управления), ASMX (реализации Web-сервисов) и ASHX (обработчики). Кроме того, Visual Studio .NET создает RIiSX-файлы, файлы проектов и решений. И когда дело доходит до развертывания ASP.NET-приложений, вопрос о том, какие файлы вклю- чать, а какие — нет, становится ^ . серьезным.
Посмотрим, какие именно файлы генерирует Visual Studio и где они
находятся в дереве каталогов.
Структура каталогов по умолчанию
Когда вы открываете новый проект, Visual Studio создает структуру каталогов по умолчанию. В предыдущих версиях Visual Studio файлы проекта обычно помещались в один каталог, нередко содержащий несколько подкаталогов (например, среда Visual Studio 6.0 создавала подкаталог \ге$). В случае ASP.NET структура каталогов, формируемых Visual Studio весьма изощренна.
Во-первых, так как приложения ASP.NET предназначены для работы в
Web, они подчиняются ограничениям Microsoft Internet Information Services (IIS). To есть этим приложениям нужны виртуальные каталоги. Мастер ASP.NET-приложений Web Forms создает виртуальный каталог при создании приложения. По умолчанию Visual Studio помещает большинство файлов приложения в один из подкаталогов каталога wwwroot. Скажем, если вы создадите в Visual Studio .NET ASP.NET-приложение AppDuJour, в wwwroot автоматически будет сформирована такая структура каталогов;
INetPub wwwroot
AppDuJour
AppDuJour.csproj
\bin
