ASP.NET веб-приложение и веб-сайт

Веб-проект ASP.NET можно создавать как приложение и как сайт. Конечная цель этих видов проектов рабочий веб-сайт, размещенный на сервере. Создавать интернет проекты можно скомпилировав весь программный код (находящийся в многочисленных файлах) в сборку .dll (веб-приложение) или же разместить текстовые файлы с программным кодом непосредственно на сервере (веб-сайт) для динамической компиляции при загрузке веб-страниц. Выбрать ту или иную схему построения помогают теоретические знания и опыт работы с различных типами веб-проектов.

Просмотр содержимого веб-приложения и веб-сайта в MS Visual Studio. В веб-приложении файлы исключенные из проекта, по умолчанию, невидимы и просмотреть все файлы можно нажав кнопку показа всех файлов, при этом исключенные файлы будут выделены прямоугольником из точек. Данная опция отключения видимости дает возможность сосредоточиться только на рабочих файлах проекта. В проекте веб-сайта видны все файлы, исключенные из проекта файлы маркируются расширением .exclude, но не скрываются (наверняка в следующих версиях Visual Studio появится возможность скрывать их). Интересно, что можно открыть любую папку в компьютере с помощью Visual Studio или WebMatrix и она будет интерпретироваться как веб-сайт. При публикации файлы исключенные из любого веб-проекта на сервер не переносятся. Работая в веб-приложении программный код можно помещать в любые папки, но не желательно использовать название для папки App_Code, эта папка зарезервирована для веб-сайта и при запуске веб-проекта в Visual Studio возможна двойная компиляция (хотя после публикации на сервер нормальная работа восстанавливается). Программный код веб-сайта напротив можно помещать только в папку App_Code. Для удобства, в вебприложении и в веб-сайте, разрешено использовать вложенность папок любой глубины.

Вид веб-приложения в обозревателе решенийВид веб-сайта в обозревателе решений

Веб-приложения ASP.NET создаются в Visual Studio, все файлы классов с выделенным кодом и отдельные файлы классов в проекте компилируются в единую сборку, которая помещается в папку Bin проекта веб-приложения. Файлы же ASPX и ASCX компилируются динамически на сервере подобно функциональности веб-сайта.

Веб-сайты ASP.NET можно создавать и редактировать в Visual Studio, в WebMatrix и даже используя простой текстовый редактор Блокнот. Компилировать веб-сайт не требуется. В большинстве случаев проекты веб-сайтов компилируются автоматически с помощью .NET Framework на сервере IIS. Можно выбрать режим пакетной компиляции, в котором обычно создается одна сборка для каждой папки, или режим фиксированной компиляции, в котором обычно создается одна сборка для каждой страницы или пользовательского элемента управления. Данная настройка фиксируется в файле конфигурации веб-узла web.config.

Проекты веб-приложений желательно выбирать когда:

  • Необходимо избежать размещения открытого исходного кода на рабочем сервере.
  • С помощью компилятора требуется создать единую сборку для всего сайта.
  • Необходимо выполнять модульные тесты кода, находящегося в файлах классов, связанных со страницами ASP.NET.
  • Требуется ссылаться на классы, связанные со страницами и пользовательскими элементами управления из изолированных классов.
  • Требуется управление именем и номером версии сборки, созданной для сайта.

Проекты веб-сайтов являются предпочтительным вариантом выбора когда:

  • Исходные файлы приложения копируются на сервер IIS.
  • В один веб-проект необходимо включить как код C#, так и код на другом языке .NET.
  • Необходимо открыть рабочий веб-сайт в Visual Studio или WebMatrix и обновить его в режиме реального времени через протокол FTP.
  • Если требуется создать отдельную сборку для каждой страницы, папки или пользовательского элемента
  • Требуется возможность обновления отдельных файлов в рабочей среде путем простого копирования новых версий на рабочий сервер либо путем непосредственного редактирования файлов на рабочем сервере.
  • Вы хотите сохранить исходный код на рабочем сервере в качестве дополнительной резервной копии.

Использование файлов проектов веб-приложений предоставляет следующее преимущества:

  • Можно с легкостью временно удалять файлы из сайта и сохранять их отслеживание, поскольку они остаются в структуре папок. Например, если страница не готова для развертывания, можно временно исключить ее из построения, не удаляя из структуры папок.
  • Скомпилированную сборку можно развернуть, а затем снова добавить файл в проект.

Использование проектов веб-сайтов предоставляет следующие преимущества:

  • Для управления структурой проекта не требуются специализированные инструменты обработки программного и html кода.
  • Можно редактировать файлы простейшим текстовым редактором, например Блокнотом, и копировать файлы в проект или удалять их из него с помощью проводника Windows.

К статье прикреплены исходники примеров веб-приложения и веб-сайта. Исходники созданы в MS Visual Studio 2013 Express, MS Visual Studio 2013, могут быть открыты в Visual Studio 2012. Веб-сайт может быть открыт еще и в WebMatrix или использовать для редактирования веб-сайта любой текстовый редактор.

Файл исходника Размер Количество загрузок
webapp-website.zip 50 КБайт 921

Книги по тематике

Основы ASP.NET 2.0 Гаряка А.А., 2014 В курсе рассматривается создание web-приложений, использующих ASP.NET 2.0. ASP.NET —это технология,... Узнать больше »
ASP.NET MVC 5 с примерами на C# 5.0. Для профессионалов Фримен Адам, 2015 Инфраструктура ASP.NET MVC 5 представляет собой последнюю версию веб-платформы ASP.NET от Microsoft.... Узнать больше »
ASP.NET Core. Разработка приложений. Руководство Чамберс Джеймс, 2018 Современные разработчики занимаются построением кроссплатформенных приложений, их сопровождением... Узнать больше »
Как написать безопасный код на С++, Java, Perl, PHP, ASP.NET Виега Дж., 2018 Эта книга необходима всем разработчикам программного обеспечения, независимо от платформы,... Узнать больше »
Яндекс цитирования Rambler's Top100 Яндекс.Метрика