Почему мои проекты создаются, когда нет изменений? - PullRequest
6 голосов
/ 28 ноября 2010

У меня есть много проектов на C # (Visual Studio 2008), и некоторые из них обновляют сборку, даже если не было никаких изменений (даже если я выбрал Build, а не Rebuild). Большинство моих проектов не делают этого, это всего лишь несколько странных случаев.

Мне еще предстоит найти какую-либо разницу между проектами, и я подумал, есть ли у кого-нибудь идеи, что может на него повлиять. Чтобы было ясно, я не вносил никаких изменений в код перед сборкой, но сборка все еще воссоздается, когда я запускаю команду Build в Visual Studio.

Извините, я не могу предоставить более подробную информацию, но, пожалуйста, дайте мне знать, если есть что-то еще, что я могу проверить, что может пролить свет.

Кто-нибудь может помочь? Я уже некоторое время рвал на себе волосы.

Спасибо, Alan

Ответы [ 3 ]

10 голосов
/ 12 августа 2014

На самом деле, теперь удаленный ответ Ганса указал мне правильное направление. Подняв многословность MSBuild до Diagnostic , я сказал, что VS считает проект всегда устаревшим, поскольку в одном файле для параметра "Копировать в выходной каталог" установлено значение "Копировать всегда". И другие проекты следовали из этого, потому что они зависели от этого проекта и заметили, что недавно построенная DLL была новее, чем один из их собственных выходных файлов.

Изменение «Копировать в выходной каталог» на «Копировать, если новее» разрешило это.

4 голосов
/ 29 ноября 2010

Существует нечто, называемое проектными зависимостями.

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

Вы можете щелкнуть правой кнопкой мыши Решение и выбрать Порядок сборки проекта, чтобы открыть окно, в котором объясняется порядок, в котором строятся проекты, и зависимости для каждого проекта.

1 голос
/ 10 декабря 2010

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

Я думаю, что это как-то связано с перестраиваемыми встроенными ресурсами каждый раз.

Извините, у меня нет однозначного ответа на этот вопрос. Спасибо RobV тоже за полезную информацию.

Alan

...