Является ли вариант публикации в Visual Studio рассматривать предварительную компиляцию для веб-приложений ASP.NET?

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

Вопрос

У меня проблемы с пониманием, когда сайт считается «предварительно скомпилируемым». Как я понимаю, что я прочитал, если я использую параметры пакета публикации или построения развертывания из Visual Studio, то это предварительно скомпилирование, но если я просто использую что-то вроде XCopy, то это не выполняется. Это правильно?

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

Решение

Проекты веб -сайтов ASP.NET имеют возможность развертывания XCOPY, в котором все файлы, включая ASPX, ASPX.CS, ASCX, ASCX.CS и т. Д. Среда выполнения ASP.NET собирает сайт, когда он получает первый запрос. Если вы проверите папку C: Windows Microsoft.net Framework V Temporary ASP.NET файлы, вы можете увидеть выход. Это, очевидно, очень легко для развертывания, так как все, что нам нужно сделать, это скопировать файлы на веб -сервер. Тем не менее, первый посетитель оплачивает цену за то, как сайт собирается в первый раз. Опция публикации выполняет эту работу до развертывания. Он компилирует проект веб -сайта и производит сборки, которые готовы к запуску. В публикации есть вариант, чтобы оставить файлы ASPX, чтобы их можно было изменить. В обоих случаях нет файлов .cs, так как они были составлены в сборки. Проверять Прохождение: публикация веб -сайта Больше подробностей.

Hth

Другие советы

Это «составлено» в том смысле, что у вас будет MSIL DLL вашего веб -кода. Тем не менее, вам все равно придется иметь компиляцию JIT. Вы должны использовать утилиту NGEN, если вы используете .NET 2.0 или больше, чтобы предотвратить это время разминки. Обратите внимание, что NGEN полезен только для устранения первого времени «запуска» приложения. Это затрудняет поддержание, потому что код JIT'ED может выйти из синхронизации с кодом NGEN'D. В моей корпоративной среде мы решили не использовать NGEN из -за этих потенциальных ловушек.

Смотрите ссылки ниже:

Помогает ли это использовать NGEN для приложений ASP.NET?

Документация Microsoft на утилите NGEN

Потенциальные подводные камни использования ngen

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