.NET DLL中的版本不反映构建或修订版

时间:2017-10-13 19:41:58

标签: c# .net visual-studio visual-studio-2012

在Visual Studio 2012中使用C#...

  • 我在Debug或Release模式下构建程序集。
  • 我在 bin / debug bin / release 文件夹中右键单击新创建的DLL的属性,然后选择“ properties
  • 在“详细信息”标签上,我查看文件和产品版本属性,并查看以下内容...

    文件版本1.0.0.0

    产品版本1.0。*

AssemblyInfo.cs定义了这样的版本......

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

我期待,当我查看DLL属性时... ...

File Version    1.0.3.19514
Product Version 1.0.3.19514

是否存在某些原因导致构建版本和修订版号未被自动设置,因为看起来世界上的所有文档都表明它们应该存在?

我毫不怀疑这对我来说是一个大脑屁。 :|

由于

1 个答案:

答案 0 :(得分:0)

如果您在assemblyinfo.cs文件中使用星号代替内部版本号,那么您告诉Visual Studio在计算内部版本号时应用其规则, 修订号。在编译时VS不会将星号更改为存储在程序集中的实际值,因此,在下一次编译时,它可以重复该过程。

有关VS中版本控制的当前规则在MSDN上的AssemblyVersionAttribute页面中进行了解释

而且,不久,他们正在说

  

默认内部版本号每天递增。默认修订号   是当地时间午夜以来的秒数(没有服用   考虑到夏令时的时区调整),划分   由2。