首页 新闻 会员 周边 捐助

Type.GetType返回null 高手指点

0
[待解决问题]

在一个程序中 有两个添加了两个项目(类库)。A  和 B    B对A进行了引用。。但是A没有引用B

现在在 A的类里面想用Type.GetType 得出B项目里面的一个类的实例。。结果为空。。测试 如果是 添加过引用的项目  则可以 返回结果。。没有添加引用的就返回null

问题补充:
(IDbProvider)Activator.CreateInstance(Type.GetType(string.Format("YCMS.Data.{0}Provider,YCMS.Data.{0}", BaseConfigs.GetDbType()), false, true));


代码上

yzy的主页 yzy | 菜鸟二级 | 园豆:317
提问于:2011-12-21 15:48
< >
分享
所有回答(5)
0

Type.GetType中的Type是一个对象。

悟行 | 园豆:12559 (专家六级) | 2011-12-21 16:13

这是肯定的啊,你都不添加引用,它怎么找的到YCMS.Data.{0}Provider,YCMS.Data.{0}", BaseConfigs.GetDbType()这个呢。

支持(0) 反对(0) 悟行 | 园豆:12559 (专家六级) | 2011-12-21 16:19
0

同意楼上。如果不添加引用就要手动加载程序集。

碧落星痕 | 园豆:708 (小虾三级) | 2011-12-21 16:24
0

请问,您这个问题是怎么解决的啊

是苦恼啊,A要引用B,但是又不能引用,引用的了就是循环引用了,您最后是怎么解决的啊

M i S s | 园豆:78 (初学一级) | 2013-04-02 15:15
0

我也遇到同样的问题,求解啊!

山村色野先生 | 园豆:202 (菜鸟二级) | 2013-06-09 02:00
0

var asmb = Assembly.LoadFrom("Test.dll") ;
var t = asmb.GetType("Test.MyClass") ;

原理是先通过反射找到dll 这种方法是针对未添加引用的情况

添加引用情况 Type.GetType("Test.MyClass,Test");

非同凡向 | 园豆:204 (菜鸟二级) | 2016-07-08 10:21
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册