2013-02-11 42 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 /問題。