<BuildDate> 12-23.2011 </ BuildDate>

ользую задачу предварительной сборки в Visual Studio 2008, которая вызывает msbuild:

C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe $(MSBuildProjectDirectory)\version.targets /p:Configuration=$(ConfigurationName)

Внутри version.targets я обновляю файл AssemblyInfo.cs, чтобы заменить информацию о версии:

   <FileUpdate
        Encoding="ASCII"
        Files="$(MSBuildProjectDirectory)\Properties\AssemblyInfo.cs"
        Regex="AssemblyInformationalVersion\(&quot;.*&quot;\)\]" 
        ReplacementText="AssemblyInformationalVersion(&quot;Product $(ConfigurationString) ($(buildDate))&quot;)]"
    />

Когда я собираю проект через Visual Studio 2008, он собирается без каких-либо проблем.

Но когда я смотрю на информацию о версии полученного exe-файла, она содержит предыдущую временную метку, хотя AssemblyInfo.cs был изменен на «правильную».

Кажется, что изменения перед сборкой не видны основной задачей компиляции, и она всегда позади.

Есть идеи, что я делаю не так?

Ответы на вопрос(4)

Ваш ответ на вопрос