首页
技术库|站长工具|技术手册|字体库|知识点词汇表| 联系我们|
打开本页的html静态页面
 

主菜单

文章分类

.: .Net技术 .: 问题集锦 .: asp.net中反射的未将对象引用设置到对象的实例/null等错误

  • 全文内容
  • 发表评论
  • 文章点评
  • 文章附件
  • Email文章
  • 打印文章

asp.net中反射的未将对象引用设置到对象的实例/null等错误

点击次数:1008 创建日期:12-25-2007 录入:cn-web.com 字体:[ ] 点评:


很常时间没有用反射,今天突然项目中要求使用,一直出现 未将对象引用设置到对象的实例的错误。
代码实现很简单,简单总结大致如下三行:
 string path = "SQLServerDAL";
 string className = path + "alldeadmin.t_public_xmclass";
Assembly.Load(path).CreateInstance(className);

以上代码是我简化过的,不过能说明问题。
注解:Assembly.Load(path),path的值应当为引用的dll文件的名称
CreateInstance(className),className的值应当为名字为path的dll文件里的命名空间。
我的SQLServerDAL.dll文件的命名空间结构如下图所示:
我反射的是t_public_xmclass类下的方法,所以为alldeadmin.t_public_xmclass。
出现“未将对象引用设置到对象的实例”或者对象为null的错误,通过上述可知道只需在path值和命名空间的值上找原因了。
经查,我的错误是因为忘了在项目中引用SQLServerDAL.dll文件了(呵呵,很低级的错误)。
注:path 的值一定要与您引用的dll文件名字一样,您可以用以下方法修改生成的dll程序集的名称:
1打开您要修改的项目属性(我这里是SQLServerDAL的属性)
2在属性页修改程序集名称,如图:
重新编译、引用就OK啦。
老韩07.12.25

请文明参与讨论,禁止漫骂攻击。
评论总数:0 [ 查看全部 ] 网友评论
此文章还没有任何评论!
(+5分)
(+4分)
(+3分)
(+2分)
(+1分)
此内容无附件
网站地图 - 知识词汇 - 全文检索 - 广告服务 - 帮助中心 - 联系我们
.:www.cn-web.com
网站技术开发联盟之WEB开发技术知识库
联系人:老韩(QQ:5679551)
晋ICP备07003487号