Following the recommendations in system generated comments of an AssemblyInfo.cs file:
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
I set (just for testing):
[assembly: AssemblyVersion("2.1.*")]
After building, I get the version number: 2.1.4321.42563
Then, after making small change to the AssemblyInfo.cs file and building once more, I get next version: 2.1.4321.42710
I’m wondering what do all that numbers (4321.42563; 4321.42710) mean? What is the pattern, following which the system generates them?
4321 = number of days since January 1st 2000
42563 = number of seconds since midnight / 2
Which makes that 10/31/2011 11:38:46 PM. It is local time without daylight savings adjustment.