AssemblyFileVersion导致构建失败

时间:2011-03-17 15:26:38

标签: tfs msbuild compact-framework

当我尝试构建项目时,出现以下错误:

error : Unable to update the AssemblyFileVersion for c:\builddir\MyProject\AssemblyInfo.cs: No stub entry for AssemblyFileVersion was found in the AssemblyInfo file.

我找到了this文章,这意味着需要“存根”属性。所以,在我的AssemblyInfo.cs中,我尝试指定一个:

[assembly: AssemblyFileVersion("1.0.0")]

但是,它不被认可。我终于遇到了this文章,其中说你不能将CF的AssemblyFileVersion属性使用。构建脚本使用的目标文件也用于构建其他非CF项目,并且需要为它们更新FileVersion。

是否可以在AssemblyInfo.cs文件,目标文件或构建脚本中放置一些东西来阻止这个问题?

2 个答案:

答案 0 :(得分:0)

是的,就像这样:

#if !(WindowsCE || PocketPC)
[assembly: AssemblyFileVersion("1.0.0")] 
#endif

答案 1 :(得分:0)

如果以其他答案中描述的方式使用预处理器不适合您,请考虑将AssemblyFileVersion属性放入单独的源文件中,并有条件地在项目中包含该源文件:

<Compile Include="AssemblyInfo.cs" />
<Compile Include="AssemblyInfo.AssemblyVersion.cs"
  Condition="
    '$(TargetPlatform)' == 'WindowsCE' OR
    '$(TargetPlatform)' == 'PocketPC'"
  />

我不确定您是否已经在项目文件中使用了属性,或者您是否需要声明自己的属性(可能是$(平台)用于此?)