<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\(".*"\)\]"
ReplacementText="AssemblyInformationalVersion("Product $(ConfigurationString) ($(buildDate))")]"
/>
Когда я собираю проект через Visual Studio 2008, он собирается без каких-либо проблем.
Но когда я смотрю на информацию о версии полученного exe-файла, она содержит предыдущую временную метку, хотя AssemblyInfo.cs был изменен на «правильную».
Кажется, что изменения перед сборкой не видны основной задачей компиляции, и она всегда позади.
Есть идеи, что я делаю не так?