Почему сервер разработки IIS перекомпилирует все мое веб-приложение каждый раз, когда я создаю свое веб-приложение в VS 2008? - PullRequest
1 голос
/ 17 декабря 2008

У нас есть проект веб-приложения (не веб-сайта), пока в тот день, когда мы добавили batch = "false" на сервер веб-разработки web.config, все веб-приложения собирались вместо запрашиваемой страницы.

<compilation debug="true" batch="false">
      <assemblies>
        ...
      </assemblies>
</compilation>

Это делает нас быстрее. Но я не знаю, что изменилось (я проверил foo.cproj и web.config из репозитория, сравнивая более старые версии, но не нашел ничего, что могло бы вызвать эту медлительность).

Я посмотрел на% temp% / Temporary ASP.NET Files; после компиляции моего веб-приложения (не перекомпилировать, shift + f6) я запрашиваю страницу и вижу, что веб-сервер удаляет все уже скомпилированные файлы из% temp% / Temporary ASP.NET Files и создает заново. Я не знаю, нормально ли это, но мне показалась полная перекомпиляция всего веб-приложения, что очень медленно. (Я посмотрел через проводник процессов на wevdev.wevserver.exe, он вызывает csc.exe несколько раз)

Как я могу сделать компиляцию быстрее? Спасибо ...

Ответы [ 2 ]

1 голос
/ 20 декабря 2008

Я считаю, что это часть использования проекта веб-приложения. Каждый раз, когда вы создаете приложение, весь сайт перекомпилируется. Вы должны увидеть, что в отличие от «веб-сайта», веб-приложение все компилируется в одну DLL (плюс ссылки).

Еще одна вещь, на которую вы должны обратить внимание, это то, что каждый раз, когда вы удаляете файл / папку из корневой папки веб-приложения, он также вызывает принудительную перекомпиляцию, что может быть реальной проблемой для временных файлов.

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

1 голос
/ 19 декабря 2008

Для сервера разработки ASP.NET существует опция «Включить редактирование и продолжение», которая доступна в 32-разрядной версии NET CLR. Выключите это в Visual Studio.

Также попробуйте изменить сборку для «Любого процессора» в сборке для «x86». Это должно ускорить компиляцию.

...