Out of curiosity, I\'ve created 2 assemblies which both have a class (Class1
) with the exact same namespace (Library1
). I then create another clie
I think you should use an extern alias to wrap the assembly namespaces outside of the Global namespace. Here's how:
In the project that references the 2 assemblies, select one of them under References, and in the Properties window change the Aliases value from global
to, say, global, Library1a
.
Do the same for the the other reference, but give it a different alias-- let's go with global, Library1b
for our example.
Insert extern alias Library1a;
and/or extern alias Library1b;
as the first 2 lines of any classes that consume the assemblies.
When accessing ambiguous members, qualify the namespace with Library1a.
or Library1b.
. Examples: Library1a.Library1.Class1...
Library1b.Library1.Class1...
It happens in practice and is a real pain, the external alias can't always solve the problem. Here's one example of where it's an issue Duplicate Namepsaces.