I use four-parts version pattern that looks like: {Major}.{Minor}.{Date (MMdd)}.{Build Number}
An example version in this format would look like: 1.7.1028.37, which breaks down into being the first major release, seventh minor release, built on 28 October, and has been the 37th build for v1.7. Every time assembly is rebuild build counter increases.
Sample solution is available for download here https://github.com/mchudinov/Versioning.