I'm attempting to use Assembly.GetType("MyCompany.Class1.Class2") to dynamically get a type from a string.
Assembly.GetType("MyCompany.Class1");
works as expected.
If I embed a class within another class such as:
namespace MyCompany
{
public class Class1
{
//.....
public class Class2
{
//.....
}
}
}
and try to get the type Class2
Assembly.GetType("MyCompany.Class1.Class2")
will return a null.
I'm using the .NET Frameworks 3.5 SP1
Does anyone know what I'm doing incorrectly and what I can do to fix this?
Thanks in advance
Kevin D. Wolf Tampa, FL
From stackoverflow
-
You need the Plus sign to get Nested Classes to be mapped using Assembly.GeType.
Assembly.GetType("MyCompany.Class1+Class2");P Daddy : You're close. You need "MyCompany.Class1+Class2".CMS : Yep, just noticed it, thanks!Hallgrim : If the assembly isn't loaded in memory, you need to have the fully qualified type name. GetType("MyCompany.Class1+Class2, MyAssembly"); -
I think it's named MyComnpany.Class1+Class2.
If I run this code on a similar structure, that's what I see:
Assembly assem = Assembly.GetExecutingAssembly(); Type[] types = assem.GetTypes();example Types to see the names.
-
You need to use plus signs. Something like "MyAssembly.Class1+NestedClass".
0 comments:
Post a Comment