Should .NET Assembly names include a version number?

We currently have a heated internal debate as to whether the actual .NET assembly name should include the code's version number (e.g. CodeName02.exe or CompanyName.CodeName02.dll). Does anyone know of an authoritative source, like Microsoft, that provides guidance on this issue?

Answers


This is what the Properties/AssemblyInfo.cs file is for.

There are two versions within that file, the file version and the assembly version:

[assembly: AssemblyVersion("1.1.0.256"]
[assembly: AssemblyFileVersion("1.1.0.256")]

Once these are set you can use them to track the versions of you binaries. It is easily viewed in explorer with right click->properties.

None of the dll or exe names included in Microsoft's applications (and OS) use that convention.

Other systems will use these numbers to resolve dependencies and verify the version. For example the MSI system will update binaries based on the version properties.


Need Your Help

Release handle on file. ImageSource from BitmapImage

c# wpf xaml

How can I release the handle on this file?

Eagerly Load Navigation Property that is List<OfSomeBaseClass>

entity-framework-4 ef-code-first

Using EF Code First and given an Entity that contains a List, how can I eagerly load the entire object graph for that entity: