类库中编译成dll的类中有下面的字段
private string constr = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
通过反射的方法调用这个dll,在用Activator.CreateInstance(type)生成实例中发生异常,原因在于type中的constr读不到调用它的程序的配置文件中的ConnectionString,因此不能初始化该字段.
如何能让dll中的类,在Activator.CreateInstance时,能读到调用它的程序的App.config中的ConnectionString???
请高手指点一二?
反射调用的dll和App.config在同一个目录下吗?
反射调用的dll与App.config不在同一目录,dll文件在与App.config同级dll文件夹中
@son409:
1,放在同一个目录;
2,反射之前,先把App.config拷贝到需要反射的 dll 的目录下;
3,改变获取连接字符串的方式,在调用的时候将连接字符串通过方法参数传递给被反射的类;
@Launcher:
我的目的是,只需要修改App.config,让程序自动调用dll文件,连接数据库。
回头试试,把App.config 拷贝到dll文件夹中。如果OK了,就结贴给分。
非常感谢!!!!