Предварительная компиляция во время публикации для веб-служб Azure.

StackOverflow https://stackoverflow.com//questions/22018962

Вопрос

Мы используем Веб-службы Azure (не веб-сайты) и запустите внутри него приложение ASP.Net MVC 5.1.

Когда я публикую веб-сайты с помощью веб-развертывания, у меня есть возможность «Предварительная компиляция во время публикации»:

enter image description here

Когда я публикую в веб-службах Azure, я нигде не могу найти эту опцию.Есть какие-нибудь указатели?

Идея состоит в том, чтобы предварительно скомпилировать представления, чтобы первое попадание в представление не ограничивалось временем компиляции на лету.

я посмотрел Бритвенный генератор но это не соответствует нашим потребностям.Я видел несколько других вариантов, но в нашем случае наиболее целесообразным является сбор мнений на этапе публикации.

УПД: Просто для справки: я попробовал то, что Дэвид Эббо предложил и это не работает.

Это было полезно?

Решение

Вызов компилятора %windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_compiler.exe -m /LM/W3SVC/1273337584/ROOT из командной строки на сервере Azure, похоже, вызывает компиляцию.Временный корневой каталог ASP.Net содержит один каталог, размер которого увеличивается, а количество содержащихся в нем файлов увеличивается.Затем сайт перезапускается после компиляции.Производительность открытия первой страницы кажется намного лучше.

Если я запустил это в сценарии запуска, это не сработает, поскольку сайт недоступен.Я думаю, IIS не запустился.Глядя на то, чтобы сделать что-то вроде этого Лазурный:Как выполнить задачу запуска с задержкой?

Идентификатор сайта, похоже, не меняется для разных развертываний.Я думаю, можно было бы получить идентификатор сайта из IIS, а затем использовать его, если да.

Похоже, это так.Есть ли более элегантный способ?Не понимаю, почему компиляция и развертывание файлов представлений — такая утомительная работа.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top