|
-
January 10th, 2008, 12:09 PM
#1
Reflection: Type.GetType(string) but different Assembly
Hi!
I've got a string representing the full name of a class ("Blah.Muh.Thing" for example). For getting it's type I normally would now use Type.GetType(string). But the class isn't in the calling Assembly. It's in a DLL used by my application. So I have to use Assembly.GetType(string) first. BUT that only works when I know the Assembly. Now my question:
What do I have to do if I want to load the type from a string if I don't know from which Assembly it comes from?
[C#/.NET2.0/VS 2005]
-
January 10th, 2008, 12:21 PM
#2
Re: Reflection: Type.GetType(string) but different Assembly
I think you need to know what assembly(namespace) where the type definition is.
The difficulty is that you have no idea how difficult it is.
.Net 3.5/VS 2008
-
January 10th, 2008, 12:38 PM
#3
Re: Reflection: Type.GetType(string) but different Assembly
You could do something like this:
Code:
Assembly[] assemblies = AppDomain.CurrentDomain.GetAssemblies();
List<Type> types = new List<Type>();
foreach (Assembly assembly in assemblies)
{
Type type = assembly.GetType("LibA.MyType");
if (type != null)
types.Add(type);
}
foreach (Type type in types)
{
Console.WriteLine("Fonund type {0} in assembly {1}.", type.FullName, type.Assembly.FullName);
}
- petter
-
January 11th, 2008, 06:08 AM
#4
Re: Reflection: Type.GetType(string) but different Assembly
Ah, thank you - works great! I was not able to see the wood for the trees.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|