首先我是模仿别人写的,我个人理解这段代码主要是通过Assembly类中的方法调用配置文件里的数据库驱动类,应该是一个数据库访问层的工厂类吧。但是出现了些细节问题不懂。具体如下:
(DataProvider)Assembly.Load(assemblyName).CreateInstance(constructor,false);
其中DataProvider是一个类,assembleyName是从配置文件调用的一个程序集名,这里的constructor是assembleyName中的一个类。
1、我不清楚constructor是具体有什么用?
2、上面这句话具体来说有什么实际意义,是创建了一个对象吗?
3、为什么我在通过这样创建的对象调用方法时,总是说未将对象引用设置到对象的实例?由于水平有限,我研究了半天还是不知道错在哪?希望大家赐教
(DataProvider)Assembly.Load(assemblyName).CreateInstance(constructor,false);
其中DataProvider是一个类,assembleyName是从配置文件调用的一个程序集名,这里的constructor是assembleyName中的一个类。
1、我不清楚constructor是具体有什么用?
2、上面这句话具体来说有什么实际意义,是创建了一个对象吗?
3、为什么我在通过这样创建的对象调用方法时,总是说未将对象引用设置到对象的实例?由于水平有限,我研究了半天还是不知道错在哪?希望大家赐教
解决方案 »
- application_end
- 求一个sql语句,数据库结构以及想的得到的功能如下
- asp.net怎么实现收发传真,请各位给点意见
- vs2005,sql2005,oracle,wwf....现在的开发工具越来越吃系统,硬盘也不够用,请大家推荐一款性价比比较高的笔记本
- 无法用CustomValidator验证FileUpload控件上传文件的扩展名,求助!
- 请问自己写一个名称空间要注意些什么呢?
- 关于TREEVIEW展开的问题!
- asp.net gridview 分页后 全选失效 怎么办?
- 谁有.net的安装序列号码?
- 关于如何将网页再制定的框架中打开的问题!!
- windows xp的iis配置中自己的电脑可以打开自己的网站,而别人打不开是什么原因呢?
- gridview更新,删除问题
还有就是要加载的程序集是否可以和当前代码所在的程序集是同一个呢?
TreeView tv= (TreeView)System.Reflection.Assembly.Load("Microsoft.Web.UI.WebControls").CreateInstance("Microsoft.Web.UI.WebControls.TreeView",false);
TreeNode node = new TreeNode();
node.Text = DateTime.Now.ToString();
tv.Nodes.Add(node);========================================================
上面的代码能够成功执行,如果改为(类型名称没有写全):
TreeView tv= (TreeView)System.Reflection.Assembly.Load("Microsoft.Web.UI.WebControls").CreateInstance("TreeView",false);
则会重现楼主所描述的错误~