When should I use the strongly named runtime?
Strongly named assemblies were developed to fix the old "DLL Hell" problem, where applications broke after a DLL they relied upon had been updated. A strongly named assembly does not have just a name, it also has a version number, creator information, and other assorted metadata. In a nutshell, this allows multiple versions of one assembly to coexist peacefully with applications being able to use the version that they were built for.
There is a lot of information on the issue of strong vs. "weak" (there really is no such term as "weakly" named) available online. You might want to check out:
You might wish to consider using strongly named assemblies if:
- You wish to sign the assemblies to prove their origin.
- You wish to deploy them into the Global Assembly Cache (GAC)
- You want to register the assemblies for COM interoperability so you can use them from VB6 or COM applications.
Just be aware that using strong names in one assembly requires you to use only strongly named assemblies. This is not a decision to be made lightly!