Как подобрать последнюю версию AssemblyInfo.cs, измененную событием перед сборкой? - PullRequest
0 голосов
/ 30 июня 2011

В настоящее время я работаю с событиями до и после сборки в VS2010, пытаясь получить свой номер версии SVN в файле AssemblyInfo.cs и, следовательно, скомпилировать его в мою сборку dll.

В доbuild Я запускаю скрипт, который обновляет файл AssemblyInfo.cs, и на шаге после сборки я запускаю скрипт, чтобы сбросить его до нуля.

Я хочу сделать это, потому что если я оставлю последнюю версию, то SVNрассматривает это как изменение, которое будет зафиксировано, что обновит номер версии SVN и, следовательно, приведет к другому изменению;это становится своего рода рекурсивным.

Проблема, с которой я столкнулся, заключается в том, что сборка выбирает исходную версию файла, а не ту, которая была обновлена ​​на этапе предварительной сборки.

Поэтому:

Если (в качестве теста) я вручную установил номер версии в файле:

[assembly:AssemblyVersion("1.0.0.123")]

Затем предварительная сборка обновит его до:

[assembly: AssemblyVersion("1.0.0.456")]

Затемпост-сборка обновляет его до:

[assembly: AssemblyVersion("1.0.0.0")]

И когда я смотрю на dll, который собирается, версия 1.0.0.123

Я проверил, что шаг перед сборкой завершается, прежде чемсборка начинается - но даже если я заставлю долго ждать (вызывая notepad.exe или что-то еще), VS2010 все равно не сможет подобрать обновленный файл.

Вы можете увидеть это поведение, просто вставивnotepad.exe в команде pre-build - тогда во время работы notepad;перейдите и измените файл AssemblyInfo.cs вручную.Сборка не начнется, пока вы не закроете блокнот - но как только вы закроете блокнот, он будет построен с исходной версией файла.

Я что-то упустил здесь так, как предполагалось до сборкиРабота?Есть ли способ заставить сборку взять и использовать обновленный файл?

Любые подсказки приветствуются:)

1 Ответ

0 голосов
/ 05 июля 2011

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

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