AssemblyFileVersionAttribute and AssemblyVersionAttribute: A subtle difference

The AssemblyInfo.cs file generated by Visual Studio contains the following lines:

// 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("")]
[assembly: AssemblyFileVersion("")]

I was trying to auto-increment the build number by changing them like this:

[assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyFileVersion("1.0.*")]

However, when I looked at the properties dialog for my executable, the file version was "1.0.*".

This puzzled me until I came across Manfred Lange's (Manni on DotNet) very clear explanation of the difference between these attributes and how to use them effectively to auto-increment assembly version numbers. Worth a read.


DISCLAIMER: The information in this weblog is provided "AS IS" with no warranties, and confers no rights. This weblog does not represent the thoughts, intentions, plans or strategies of my employer.

Skip to main content