我正在尝试使用Assembly.GetType("MyCompany.Class1.Class2")从字符串中动态获取类型.
Assembly.GetType("MyCompany.Class1");
Run Code Online (Sandbox Code Playgroud)
按预期工作.
如果我在另一个类中嵌入一个类,例如:
namespace MyCompany
{
public class Class1
{
//.....
public class Class2
{
//.....
}
}
}
Run Code Online (Sandbox Code Playgroud)
并尝试获取类型Class2
Assembly.GetType("MyCompany.Class1.Class2")
Run Code Online (Sandbox Code Playgroud)
将返回null.
我正在使用.NET Frameworks 3.5 SP1
有谁知道我做错了什么,我能做些什么来解决这个问题?
提前致谢
凯文D.沃尔夫坦帕,佛罗里达州
CMS*_*CMS 18
您需要使用Plus符号来使用Assembly.GeType来映射嵌套类.
Assembly.GetType("MyCompany.Class1+Class2");
Run Code Online (Sandbox Code Playgroud)
我认为它的名字叫MyComnpany.Class1 + Class2.
如果我在类似的结构上运行此代码,那就是我所看到的:
Assembly assem = Assembly.GetExecutingAssembly();
Type[] types = assem.GetTypes();
Run Code Online (Sandbox Code Playgroud)
示例用于查看名称的类型.
| 归档时间: |
|
| 查看次数: |
15630 次 |
| 最近记录: |