[Mono-devel-list] Re: Potential GAC implementation ideas

Richard Norman normri at samc.com
Thu Oct 23 20:40:28 EDT 2003

Well I would say this (after reading everyone's comments), what is being
missed here is the fact that the strong mane is the "final" key to tell
one assembly from another.

Say I am a developer and I create assembly "system.dll". another
developer creates another assembly "system.dll" what tells these two
apart, not to mention the system.dll that comes with the runtime?
Version number you say? OK. What if we are both version 2?

See how omiting the strong name breaks things down?

Next let's look at the multiple assemblies issue. By definition, the
runtime should look in the local folders first, then the GAC. In the
case of ASP.NET, the only way to have custom controls available across
webs is to install them into the GAC unless you plan to copy them to
each bin directory. Then you must be sure to update each one if you do.

With a single assembly in the GAC, you only have to wory about the one.
And if you look at the GAC itself, you have to differentiate it with the
Strong name as the final key. 
Again, the runtime looks for a file named "system.dll" with a
particular strong name not system.2.dll.
In short, I think the directory method is the way to go.
I may be way off base, but to me it keeps all the pieces in one place
as organized more easily.


More information about the Mono-devel-list mailing list