我想将我的程序集文件版本设置如下:6.0.ddMMyy.build number但它似乎不起作用,我认为这是由于版本号只接受某些值造成的。
例子:
[assembly: AssemblyFileVersion("6.0.100213.1")]
每当编译程序集时,都会产生以下版本号:
6.0.34677.1
我在这里做错了什么?
我想将我的程序集文件版本设置如下:6.0.ddMMyy.build number但它似乎不起作用,我认为这是由于版本号只接受某些值造成的。
例子:
[assembly: AssemblyFileVersion("6.0.100213.1")]
每当编译程序集时,都会产生以下版本号:
6.0.34677.1
我在这里做错了什么?
100213 - 34677 = 65536。一个幻数,2^16 和 ushort.MaxValue。版本号的 4 部分必须具有介于 0 和 65535 之间的值。
存储构建日期的另一个约定是选择任意日期 0 并计算自该日期以来的小时数或天数。这就是微软所做的。.NET 2.0 是 2.0.50727 版本,日期为 0,日期为 2000 年 1 月 1 日。新的 DateTime(2000, 1, 1) + TimeSpan.FromHours(50727) = 2005 年 10 月 14 日,下午 3 点。
这是因为编译器在创建内部版本号时正在操作值 (100213)。限制为 16 位值。此链接描述了错误/问题。