问题现象(控制台程序):
1,代码:
ContextClass cc = new ContextClass();
cc.Set((BaseClass)Assembly.Load("appCode1").CreateInstance("appCode1." + dr["class"].ToString(), false, BindingFlags.Default, null, arg, null, null));
2,现象:其中appCode1是我在此控制台下新建的以文件夹,里面放入我需要的几个CLASS,其中一个抽象类,其他均继承此抽象类.控制台城下无其他任何东西,就如刚新建的项目一样,改动只有新建了一个文件夹和在此问加价内加了几个类
3,问题:我的需求是动态实例化上述文件夹内CLASS,代码如上,代码里dr["class"].ToString()是XML里读出来的类名.现在报错说无法映射到appCode1,不可见.
----------------------------------------
是否是Assembly.Load("PARAM")此处的参数是程序集名称,而我新建的普通文件夹不算程序集??
前段日子做过一个WEB项目,添加了ASP.NET FOLDER内的APP_CODE,完全可以使用反射去实例化APP_CODE内类以及使用类内方法....
----------------------
是程序集的问题?我的新建文件夹不算程序集,所以定位不到?
网上查了下程序集是DLL,EXE?那么为什么WEB项目下的文件夹APP_CODE不是DLL也不是EXE就可以反射呢?
实在不解....
希望有高人帮我理解一下其中的问题...