Msbuild GetAssemblyIdentity版本始终为1.0.0.0

Msbuild GetAssemblyIdentity版本始终为1.0.0.0,msbuild,Msbuild,版本为1.0.0.0,即使文件版本和产品版本都在DLL中定义,并且在Windows 7中查看其属性时显示正确。有什么建议吗 <Target Name="TestingAssemblyIdentity"> <GetAssemblyIdentity AssemblyFiles="MyCSharp.dll"> <Output TaskParameter="Assemblies" ItemName="assemblyInfo"/> &l

版本为1.0.0.0,即使文件版本和产品版本都在DLL中定义,并且在Windows 7中查看其属性时显示正确。有什么建议吗

  <Target Name="TestingAssemblyIdentity">
    <GetAssemblyIdentity AssemblyFiles="MyCSharp.dll">
      <Output TaskParameter="Assemblies" ItemName="assemblyInfo"/>
    </GetAssemblyIdentity>
    <Message Text="GetAssemblyIdentity Version is %(assemblyInfo.Version)" />
  </Target>

任务返回的是程序集版本(),而不是文件或产品版本。后者不是程序集标识的一部分

请注意,程序集版本和程序集文件/产品版本服务不同


有关从msbuild中读取文件版本的可能方法,请参阅。

谢谢。我将在MyCSharp项目中设置AssemblyVersionAttribute以及AssemblyFileVersionAttribute。我在项目的AssemblyInfo.cs中使用AssemblyVersion,但版本始终为0.0.0.0!但是,我并没有检查Dll的AssemblyInfo,而是检查项目生成的.exe文件的AssemblyInfo。这可能是问题所在吗?