ASP. NET Веб-приложение принудительно перестраивает каждый бэкэнд или файл кода, делая отладку трудоемкой и непригодной для использования. - PullRequest
0 голосов
/ 06 февраля 2020

Я всегда предпочитаю использовать ASP. NET веб-сайт вместо ASP. NET веб-приложения, как определено здесь: ASP. NET веб-сайт или ASP. NET Веб-приложение?

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

Это объясняется двумя ключевыми причинами .

  1. Всякий раз, когда вы вносите изменения во внутренний файл или файл кода, вы вынуждены перестраивать проект до того, как это изменение станет доступным. При использовании «ASP. NET Web Site» фоновые файлы будут доступны немедленно, а файлы кода в каталоге «App_Code» вызовут автоматическое фоновое перестроение c, позволяющее вносить изменения в течение следующего запрос без ввода данных от разработчика.
  2. Из-за этого постоянного требования перестроения вы не можете вносить изменения во время отладки без остановки / запуска отладчика (если вы не выполняете присоединение к процессу с помощью нескольких настроек). Это очень расстраивает, особенно когда проект достигает определенного размера, когда время компиляции делает это совершенно непрактичным. Мало того, что вы теряете все свои состояния отладки, объекты, которые были загружены в память, были очищены, и т. Д. c.

Я почти уверен, что что-то упускаю, как будто веб-приложения являются предпочитаемый тип проекта большинством, как это может быть с такими ограничениями? Есть ли для этого решения или предложения о том, как выполнить серию небольших изменений во время отладки, не останавливая отладчик, а затем каждый раз вручную выполняя перестройку? И есть ли способ предотвратить пересоздание всего сайта внутренним файлам? (Наверное, поэтому в 'ASP. NET Web Site' есть dll для каждого файла или каталога)

1 Ответ

1 голос
/ 06 февраля 2020

Это не ограничение, это просто работа без компиляции шаблона WebSite на лету.

Вы можете использовать Редактировать и продолжить в Visual Studio. , но поддерживаются не все типы изменений .

...