views:

54

answers:

2

Hi, I am reading version information of my wpf application, but I am not getting the correct version as I have write in AssemblyInfo.cs file. In my file there is

[assembly: AssemblyVersion("0.1.001")]
[assembly: AssemblyFileVersion("0.0.001")]

I am reading version information using this code

 System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString();

I am getting this version 0.1.1.0 and it should be 0.1.001

Thanks

+2  A: 

In the MSDN article, it says that:

All components of the version must be integers greater than or equal to 0

So it's either rounding up or removing trailing zeros to get a valid integer.

Rox
+4  A: 

The properties Major, Minor, Build and Revision of class Version are of type int, not string. So when string from assembly version is parsed into Version class, the parts of this string will be converted to int representation. Also there are rule that first number of specified version string is Major component of Version:

"1" - 1.0.0.0
"1.2" - 1.2.0.0
"1.2.3" - 1.2.3.0
"1.2.3.4" 1.2.3.4
Eugene Cheverda
In other words, the leading zeros cannot be part of the version value. If you want to show them you'll have to format a string manually.
Tergiver
ok understand, thanks
Muhammad Akhtar