我试图像这样在我的项目中设置AssemblyVersionAssemblyFileVersion属性:

[assembly: AssemblyVersion("3.0.*")]
[assembly: AssemblyFileVersion("3.0.*")]

但我得到这个警告:



MSDNAssemblyVersionAttribute Class页面上,以下内容:



请注意粗体部分。有谁知道为什么[assembly: AssemblyVersion("3.0.*")](来自我的项目)无效,但是[assembly:AssemblyVersion("1.2.*")](来自MSDN示例)为何有效?

特别是,我很想知道我是否可以以非零的主数开头,因为我正在编写的应用程序是程序的版本3。

更新>>>抱歉,这似乎在其他帖子中得到了解答...请投票关闭它,谢谢。

最佳答案

您假设问题出在这一行:

[assembly: AssemblyVersion("3.0.*")]

当这实际上是:
[assembly: AssemblyFileVersion("3.0.*")]

就像the accepted answer to the question that you say is not a duplicate of this one所说:



*语法仅适用于AssemblyVersion属性。它不适用于AssemblyFileVersion属性。

有两种解决方法可以实现您可能希望在此处获得的结果:
  • 只需完全省略AssemblyFileVersion属性。这将导致程序集文件版本信息自动从AssemblyVersion属性(这是不支持*语法的属性)中划分出来的。
  • 突如其来,安装Build Version Increment add-in,它为您提供了比摇摇杆更多的版本递增选项。
  • 07-27 23:05