У нас есть решение среднего размера, около 20 проектов.В одном из них у меня есть бизнес-объекты.При компиляции любого проекта Visual Studio ждет и зависает около полутора минут в этом проекте BusinessEntities.
Я попробовал наше решение в SharpDevelop, и оно компилирует наше полное решение за 18 секунд.Сходное время с MSBuild.
Я предполагаю, что VS пытается выяснить, нужна ли проекту компиляция, но этот процесс примерно в 15 раз медленнее, чем выполнение компиляции !!
Iне может переключиться на великолепную разработку, в ней отсутствуют некоторые небольшие, но существенные требования для наших сценариев отладки.
Могу ли я помешать VS проверить этот проект и заставить его компилировать проекты без такой проверки, какsharpdevelop?
Я уже знаю о снятии отметки с проектов в управлении конфигурацией, чтобы предотвратить сборку некоторых проектов, но мои разработчики забудут, что им нужно скомпилировать этот проект после обновления до последних источников, и они столкнутся с проблемами, которые кажутся им странными.
Редактировать: Интересные результаты расследования: Задержка происходит только с одним из проектов.В диспетчере конфигурации я снял флажки со всех проектов, затем скомпилировал каждый из них в отдельности.Все проекты компилируются за несколько секунд!Дело в том, что: если этот специальный проект создается напрямую, он компилируется за несколько секунд, если он создается (или пропускается, потому что он актуален) в результате создания другого проекта, который зависит от него, VSзависает около полутора минут, а затем решает скомпилировать его (или пропустить).Мой вывод: Visual Studio проверяет, не были ли изменены какие-либо файлы, но по некоторым причинам для этого специального проекта это крайне неэффективно !!