Reputation: 425
Is there a way of getting the assembly name from a namespace string? Eg, get "mscorlib" from "System".
The reason for my question is I'm creating Boo scripts method-by-method and am required to add namespaces programmatically. The resulting string in Boo would read:
import System from mscorlib
I could obviously pass in a collection of import strings, but if I can just pass a list of references, that would be far more scalable!
Many thanks
Upvotes: 5
Views: 3038
Reputation: 57172
You can get it from a type:
Console.WriteLine(typeof(System.Object).Module.Name);
About the namespace, remember that more than one assembly could define the same namespace.
Upvotes: 2
Reputation: 421968
Assembly names and namespace names are totally orthogonal concepts. There are no real relations between them. Short of examining a set of known assemblies to see what namespaces they contain, there's no real way to get assembly name from namespace name. For instance, what would you do if two assemblies (both mscorlib
and System.Core
) declared a type in the System
namespace?
Upvotes: 6