Naming, Versioning, and Deployment

One of the key aspects of assemblies is found in their naming and versioning. Prior to the introduction of .NET, versioning was quite painful due to the so-called dynamic link library (DLL) hell. In the days of COM and use of “classic” DLLs, deployment of components involved registering them for use at runtime. However, when multiple versions of a component existed, they typically overwrote the binary/registrations, causing other programs to start using the new version. If the new version is not completely backward compatible, chances are high something breaks in other installed applications.

Early on in the design of .NET, it was determined that this problem had to be resolved. This called for a new naming ...

Get C# 5.0 Unleashed now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.