在Release上更新assemblyversion

时间:2014-07-14 13:17:24

标签: c#

我正在使用

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

我已经注释掉了

[assembly: AssemblyFileVersion("1.0.0.*")]

当我使用

运行应用程序时
Console.WriteLine(System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString());

我明白了:

1.0.5308.25417

第四个值(修订版)似乎是相当随机的IMO。而且编号永远不会改变。我对这些数字有点困惑。在一个完美的世界中我希望每次我增加内部版本号#34;发布"并手动更新主要和次要,但我似乎无法解决这个问题。

如果我改为使用:

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

我明白了:

1.0.0.25589

这让我可以手动更新构建并给出"随机"构建中的数字。是否可以通过"发布"来触发它?我该如何重置内部版本号?

1 个答案:

答案 0 :(得分:2)

他们不是随机的;他们是基于时间的。来自MSDN

  

默认内部版本号每天递增。默认修订号是自当地时间午夜起的秒数(不考虑夏令时的时区调整)除以2。

如果您想要其他选项,可以使用构建服务器工具,它通常可以自动为您添加每个构建值;对于TeamCity,这是AssemblyInfo修补程序,可以使用构建中的任何参数或一系列内置函数:

enter image description here