Предварительная компиляция представлений ASP.NET MVC на Azure Web App

Есть ли способ прекомпилировать представления ASP.NET MVC в Azure Web App (в частности, когда он опубликован через Управление релизами в VSTS)?

Как только каждое представление было удалено один раз, страница впоследствии отображает очень быстро. Но эта первая задержка может быть doozy для пользователей, и нет способа script касаться каждой страницы.

Я не уверен, что мне нужно что-то изменить в процессах сборки/выпуска в VSTS (я использую шаг сборки Visual Studio Build и задачу выпуска Azure Web App), или если мне нужно что-то запускать на Azure Экземпляр веб-приложения после его выпуска (или чего-то еще в целом).

Кажется, что найти способ вызвать aspnet_compiler после публикации может быть то, что мне нужно (и я видел это в отношении веб-ролей в облачных службах), но я не могу заставить это работать.

Вызов

%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_compiler -v "/" -p "d:\home\site\wwwroot" 

через Консоль в Azure Portal выполняется просто отлично (и находит ошибки, если они есть), но не оказывает никакого влияния на время запуска - попадание в первый раз все еще занимает много времени.

Так что, возможно, это не правильное направление.

Я посмотрел на RazorGenerator (включая пакет .MSBuild nuget), и я не мог заставить его работать, но на самом деле я не решался сделать так много изменений в проектах, чтобы получить предварительную компиляцию при выпуске.

Также обратите внимание, что в настоящее время я использую TFVC, а не Git, в VSTS, поэтому интеграция Kudu/Git (которая, похоже, запускает предварительную компиляцию в соответствии с некоторыми статьями) недоступна мне до тех пор, пока Я могу сказать.

Другие идеи?

Ответ 1

В шаге "Visual Studio Build" вы можете добавить аргумент "/p: PrecompileBeforePublish = true": введите описание изображения здесь

Затем задача вызовет aspnet_compiler во время процесса сборки и сгенерирует предварительно скомпилированный вывод для развертывания.

Ответ 2

В visual studio 2013+ выберите Build- > Profiles. Выберите профиль, затем выберите "Настройки". В разделе "Конфигурация" разверните "Параметры публикации файла", а затем установите флажок "Предварительная компиляция во время публикации".