2015-04-04 37 views
0

在相关TfvcTemplate.12.xaml的解决方案是增加像这样的内部版本号:添加BuildNumber在GitTemplate.12.xaml

<mtbwa:MSBuild CommandLineArguments="[String.Format(&quot;/p:SkipInvalidConfigurations=true 
/p:BuildNumber={1} {0}&quot;, MSBuildArguments, BuildDetail.BuildNumber)]" 

在Git的模板参数略有变化,但这样做的以下错误中的相同结果

Compiler error(s) encountered processing expression 
"String.Format("/p:SkipInvalidConfigurations=true /p:BuildNumber={1} {0}", 
AdvancedBuildSettings.GetValue(Of String)("MSBuildArguments", String.Empty), 
BuildDetail.BuildNumber)". 
'Microsoft.TeamFoundation.Build.Client.BuildDetail' is not accessible in 
this context because it is 'Friend'. 

在此模板中公开BuildNumber的正确方法是什么?

回答

1

有两个步骤,我不得不经过这个工作。

  1. https://social.msdn.microsoft.com/Forums/vstudio/en-US/49f11ed9-9fa8-4c20-952a-d39ee7e71051/can-no-longer-user-builddetaildroplocation-for-copydirectory-with-tfs-2013-using-build-process?forum=tfsbuild
  2. 在第1步中点击修改上“运行的MSBuild”活动,查看属性,打开“CommandLineArguments”相同的模板。我使用OctoPack八达通部署所以这里就是我的论点是这样的:

    String.Format("/p:SkipInvalidConfigurations=true /p:BuildNumber={1} {0} 
    /p:OctoPackPackageVersion={1}", AdvancedBuildSettings.GetValue(Of 
    String)("MSBuildArguments", String.Empty), BuildDetail.BuildNumber) 
    

正如你所看到的,BuildNumber指定有那么你可以删除我增加了八达通属性。最后在你的msbuild文件(例如.csproj)中使用内部版本号码$(BuildNumber)