0
我想從TFS proj文件傳遞一個計算的屬性值到正在構建的解決方案的csproj文件中,但它始終是傳遞的未修改的值。我懷疑它的任務排序問題,但我不確定。具體什麼時候sln讀取屬性值?如何將計算的MSBuild屬性傳遞給正在構建的項目?
我凸出文件的削減版本是:
<PropertyGroup>
<ProductMajorVersion>4</ProductMajorVersion>
<ProductMinorVersion>5</ProductMinorVersion>
<ProductBuildNumber>0</ProductBuildNumber>
<ProductUpdateVersion>0</ProductUpdateVersion>
</PropertyGroup>
<Target Name="BeforeEndToEndIteration">
<!-- Calculate changeset number -->
<MSBuild.Community.Tasks.Tfs.TfsClient ToolPath="C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE"
Command="history /s:$(TFSPath) /stopafter:1 /format:detailed /version:T $/mobile/main"
Recursive="true">
<Output TaskParameter="Changeset" PropertyName="ProductBuildNumber"/>
</MSBuild.Community.Tasks.Tfs.TfsClient>
<Message Text="TFS ChangeSetNumber: $(ProductBuildNumber)" />
</Target>
<ItemGroup>
<SolutionToBuild Include="$(BuildProjectFolderPath)/../../Main/BuildAll.sln">
<Targets></Targets>
<Properties>ProductMajorVersion=$(ProductMajorVersion);ProductMinorVersion=$(ProductMinorVersion);ProductBuildNumber=$(ProductBuildNumber);ProductUpdateVersion=$(ProductUpdateVersion)</Properties>
</SolutionToBuild>
</ItemGroup>
消息正確輸出修改ProductBuildNumber但我的SLN文件仍然把它讀成0
任何人可以幫助?
文件中的順序並不表示執行順序。總是困惑。 – jessehouwing