配置文件中有如下配置:
<configSections>
<section name="conn" type="MySapce.SectionHandler.CustomSection,MyDll"/>
</configSections>
<conn adapterType="SqlDataAdapter" cmdType="SqlCommand" connType="SqlConnection" readerType="SqlDataReader"></conn>
或者是:
<conn adapterType="OleDbDataAdapter" cmdType="OleDbCommand" connType="OleDbConnection" readerType="OleDbDataReader"></conn>
想根据配置文件动态改变数据库连接的类别
如Sql可以切换到Access
程序中我使用Assembly assembly=Assembly.Load("System.Data.SqlClient");object o=assembly.CreateInstance("SqlConnecion")出错
使用Type t=Type.GetType("System.Data.SqlClient","SqlConnection");得到的是null我想反射获取SqlConnection实例 我该怎么做 求助!

解决方案 »

  1.   

    据说是要得到强名 公钥 文化 完全限定去查找程序集
      假如我只有程序集名称 且知道程序集在GAC中 我该怎么去反射它
      

  2.   

    Assembly assembly=Assembly.Load("System.Data.SqlClient");
    object o=assembly.CreateInstance("System.Data.SqlClient.SqlConnecion")
      

  3.   

    未能加载文件或程序集“System.Data.SqlClient”或它的某一个依赖项。系统找不到指定的文件。不行
      

  4.   

    Assembly.Load()方法的参数好像是一个.dll文件,不是命名空间。
    请再仔细看看msdn.
      

  5.   

    Assembly assembly=Assembly.Load("System.Data.dll"); 
      

  6.   

    Assembly.Load()调用的是bin目录下的文件,如果bin下面没有System.Data.SqlClient,肯定调用不成功了,
    如果只想做多种数据库支持,方法有很多,没必要这样做啊!