The AssemblyVersion and AssemblyFileVersion attributes are the built-in way of handling version numbers for .NET assemblies. While the framework provides the ability to have the
We have our CruiseControl.NET build server embed the perforce changelist number into the AssemblyFileVersion
— this lets us track back to the source code for any assembly built by the build server. (We always build from the main branch.)
For assemblies that customers will be referencing we leave the AssemblyVersion
constant unless there are breaking changes, in which case we increment the version to ensure that customer code gets re-built against the new version.