Как предварительно скомпилировать проект веб-приложения? - PullRequest
10 голосов
/ 28 августа 2010

Недавно я слышал, что вы можете предварительно скомпилировать проекты веб-приложений. У меня вопрос как?

Прямо сейчас, когда я делаю publish для своего веб-приложения и выбираю only files needed to run this application, я публикую его, но на нем все еще есть мои страницы ASPX, и он будет компилировать только страницы JIT. Как мне сделать так, чтобы все страницы ASPX были предварительно скомпилированы перед тем, как поместить их на сервер?

Ответы [ 3 ]

7 голосов
/ 28 августа 2010

Вы можете скачать шаблон проекта, который называется Проект веб-развертывания (WDP) (версия VS2008 здесь ), который расширяет возможности сборки и развертывания Visual Studio. Это в основном оборачивает функции aspnet_compile.exe, но позволяет сделать это визуально как часть общего решения.

Помимо предварительной компиляции, он также позволяет вам делать ряд интересных вещей, таких как замена файла конфигурации (отлично подходит для развертывания в разных средах) и настройка сборки ваших сборок (для каждой страницы, для сайта и т. Д.) .

Два хороших блога Скотта Гатри об этом типе проекта:

Я использовал этот тип проекта для некоторых проектов VS2005 и VS2008, и он неоценим (особенно для тех устаревших проектов веб-сайтов !!).

Я не знал, что это также было в библиотеке MSDN, но вот хорошая статья в MSDN для WDP.

Надеюсь, это поможет!

EDIT: WDP существуют также для VS2005 и VS2010 .

1 голос
/ 28 августа 2010

К сожалению, способ сделать это не впечатляет. Вам придется «развернуть» решение локально, затем переместить его или просто скомпилировать на сервере, на котором оно будет находиться. В любом случае используется aspnet_compiler.exe. Подробнее см. http://msdn.microsoft.com/en-us/library/ms227976%28v=VS.90%29.aspx.

0 голосов
/ 28 августа 2010

Когда вы публикуете сайт, снимите флажок «Разрешить обновление этого предварительно скомпилированного сайта».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...