Какое влияние имеет новая прекомпиляция во время публикации в приложениях MVC4?

Итак, я недавно обновил Visual Studio 2012 до версии 2. Вот и в следующий раз, когда я буду публиковать свое приложение (через File Publish в этом случае), я заметил, что есть три новые опции:

  • Удалить все существующие файлы перед публикацией
  • Прекомпиляция во время публикации (со ссылкой на Configure)
  • Исключить файлы из папки App_Data​​li >

Первый и третий параметры довольно понятны, но я не могу найти документацию по второму варианту, как это применимо к MVC. Когда я проверяю это, не происходит никаких изменений в файлах, созданных на сайте, и я не вижу реальных изменений в производительности.

Ответ 1

Использование прекомпилятора ASP.NET может оказать следующее влияние на ваше приложение MVC:

  • Если у вас есть что-то в App_Code, он будет предварительно скомпилирован в DLL перед развертыванием. Без предварительной компиляции это может произойти "на лету" во время выполнения ASP.NET.
  • Если вы выберете вариант, чтобы ваши страницы не обновлялись (например, снимите первый флажок в диалоговом окне дополнительных настроек), он также предварительно преобразует ваши представления (ASPX и Razor) вместо того, чтобы их динамически компилировать во время выполнения. Установленный по умолчанию (проверенный) параметр "Разрешить предварительный скомпилированный сайт может быть обновляемым" позволяет обновлять содержимое вашего представления без необходимости пересортировать весь проект.

Если у вас нет файлов в App_Code и вы хотите, чтобы ваш сайт оставался обновляемым, он, похоже, мало что делает.