2013-02-11 81 views
0

我想设置我的程序集文件版本如下:6.0.ddMMyy.build number但它似乎并没有工作,我认为这是由版本号只接受某些值。设置AssemblyFileVersion不工作

例子:

[assembly: AssemblyFileVersion("6.0.100213.1")] 

每当汇编的编译这将导致以下版本号:

6.0.34677.1 

我在做什么错在这里?

回答

6

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点。

+0

我想有一个有意义的日期,并不需要我走出我的计算器,但这确实回答了这个问题。谢谢。 – 2013-02-11 02:04:00

3

这是因为编译器在创建内部版本号时正在操作值(100213)。限制是一个16位的值。这个link描述了这个bug /问题。