Должен ли я при создании нового проекта ASP.NET в Visual Studio выбрать создание: веб-сайт или проект?
Я понимаю, что проект веб-приложения был способом сделать это когда-то с VS 2003, но применим ли он сегодня? Какие предостережения используют одно вместо другого?
Люди уже рассмотрели здесь все основные аспекты ... Я считаю, что веб-приложения полезны для этих "быстрых и грязных" приложений ... Проверочный код и т. д. Сейчас я почти выполняю "Веб-проект" на автопилоте: )
Некоторые подробности из Apress - Pro ASP.NET 3.5 in C# 2008 Second Edition Сайты и веб-проекты
Я предпочитаю веб-приложения по двум причинам: 1. Интеграция SVN или VSS. 2. Создание справки разработчика на основе XML.
Режим веб-сайта был добавлен для сбитых с толку пользователей Interdev ;-) Есть определенная легкость обслуживания, когда местоположение и проект совпадают, но для таких вещей, как ссылки на внешнюю сборку, это усложняет задачу. Это больше не по умолчанию - MS, похоже, вернулась к проектам. Лично я предпочитаю проектный режим.





Есть довольно хорошая сравнительная таблица на MSDN.
Проекты веб-сайтов просты в том, что все файлы, добавленные в папки проекта, автоматически компилируются и включаются, что якобы было добавлено, чтобы сделать его более приемлемым для классических разработчиков ASP и PHP. Однажды преимущество состоит в том, что он включает поставщиков сборки, которые позволяют связывать определенные действия с типом файла - именно так первый выпуск SubSonic перестраивал уровень доступа к данным, когда вы добавляли файл .abp на сайт.
Однако проекты веб-приложений намного более гибкие. Например, все библиотеки классов в проекте веб-сайта должны находиться в папке App_Code, что разочаровывает в сложном приложении. Есть много сценариев, которые просто не работают для проекта веб-сайта.
Вы можете конвертировать из одного в другой, хотя, если вы не уверены, я бы рекомендовал просто начать с веб-приложения.
Я категорически не согласен с некоторыми из того, что говорится в статье Сайты и веб-проекты.
Во-первых, восстала не какая-то «небольшая» группа разработчиков - я бы предположил, что это было большинство из нас, которых не спрашивали, хотим ли мы полностью изменить способ разработки. Они, конечно, не спрашивали меня, хочу ли я потерять шесть недель времени на разработку, выясняя, что они сделали, чтобы сломать идеально хороший веб-сервис.
Это была не какая-то «скачиваемая» MS - это был VS2005 SP1, и они выпустили его чертовски быстро.
В их плюсах для безпроектной разработки команда «Копировать проект» работает очень хорошо, и нам не нужно избегать файлов отладки или проектов; вы можете перемещать страницы - если вы не используете систему контроля версий; откуда они взяли, что вам нужно заблокировать файлы проекта для совместной работы? Что они используют для управления версиями?
Я бы также добавил один вопрос к дискуссии: что такого особенного в веб-сайтах, что они должны быть единственным типом «проекта» (насколько мне известно), который не использует файл «проект»? Я ничего не могу придумать, кроме тех случаев, когда Microsoft думала, что веб-разработчики слишком простодушны, чтобы понимать проекты.
Конечно, если кто-нибудь знает какой-либо другой тип «проекта» Visual Studio, который не использует файл проекта, я был бы признателен за информацию об этом.
Имейте в виду одну из наиболее привлекательных функций веб-проектов: Интеграция SVN, которая просто не возможна с веб-сайтами.