Assembly.CreateInstance问题求大神

cjf0727 2016-06-11 12:33:58
我一个程序集下有2个类,使用反射创建实例一个类可以,一个类为空是怎么回事
Assembly assembly = Assembly.Load("Cjf.Dal");
object obj1 = assembly.CreateInstance("Cjf.Dal.BookInfoDal");
object obj2 = assembly.CreateInstance("Cjf.Dal.BookTypeDal");
assembly 这个是不为空的,obj1可以创建出实例来,可是obj2返回null是哪里出错了
...全文
332 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
2019-10-21
  • 打赏
  • 举报
回复
引用 7 楼 qq_36866347 的回复:
[quote=引用 1 楼 以专业开发人员为伍 的回复:] 你可以打开 Assembly.CreateIntance 的源代码看看呗。总共也不过3、4行代码而已。 只要有可能,就应该结合 .net framework 源代码来学习 .net。这是必须的技能。 不然什么才叫做学习过 .net 啊?读源代码就可以分得清楚一个程序员在表象之下有没有潜能了。
你是不是啥都不会,没看到过你正面解决问题,还天天嫌弃这嫌弃那的,你那么厉害咋不去开发个操作系统呢?[/quote] 网上搜到问题是看解决问题的,不是看这种什么问题不解决,还B叨B叨的.
qq_36866347 2019-06-12
  • 打赏
  • 举报
回复
引用 1 楼 以专业开发人员为伍 的回复:
你可以打开 Assembly.CreateIntance 的源代码看看呗。总共也不过3、4行代码而已。

只要有可能,就应该结合 .net framework 源代码来学习 .net。这是必须的技能。

不然什么才叫做学习过 .net 啊?读源代码就可以分得清楚一个程序员在表象之下有没有潜能了。

你是不是啥都不会,没看到过你正面解决问题,还天天嫌弃这嫌弃那的,你那么厉害咋不去开发个操作系统呢?
楚狂歌 2016-06-12
  • 打赏
  • 举报
回复
返回null应该可以捕获到错误吧?看看错误信息
秋的红果实 2016-06-12
  • 打赏
  • 举报
回复
先用MethodInfo[] Minfo = typeof(Cjf.Dal.BookTypeDal).GetMethods(BindingFlags.Instance | BindingFlags.Public);探测下该类有几个构造函数,什么类型, 方法CreateInstance(类型,构造函数参数string[]),将参数传进去 还可以用Activator.CreateInstance()实现
衣舞晨风 2016-06-12
  • 打赏
  • 举报
回复
Poopaye 2016-06-11
  • 打赏
  • 举报
回复
能想到的有这么几种情况 1、没有Cjf.Dal.BookTypeDal这个类,拼错了 2、Cjf.Dal.BookTypeDal不是public 3、Cjf.Dal.BookTypeDal没有默认的构造函数 4、Cjf.Dal.BookTypeDal是抽象的,不能构造
  • 打赏
  • 举报
回复
你可以打开 Assembly.CreateIntance 的源代码看看呗。总共也不过3、4行代码而已。 只要有可能,就应该结合 .net framework 源代码来学习 .net。这是必须的技能。 不然什么才叫做学习过 .net 啊?读源代码就可以分得清楚一个程序员在表象之下有没有潜能了。
cjf0727 2016-06-11
  • 打赏
  • 举报
回复
引用 2 楼 shingoscar 的回复:
能想到的有这么几种情况 1、没有Cjf.Dal.BookTypeDal这个类,拼错了 2、Cjf.Dal.BookTypeDal不是public 3、Cjf.Dal.BookTypeDal没有默认的构造函数 4、Cjf.Dal.BookTypeDal是抽象的,不能构造
这是2个类,继承更实现的接口都一样,类名我是直接复制的

110,537

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧