有一个借口 IMyInterFace
有一个程序集 MyAssembly
该程序集 储存在 E:\MyAssembly.dll 文件中
可以用如下代码获得这个程序集
System.Reflection.Assembly o = System.Reflection.Assembly.LoadFile(@"E:\MyAssembly.dll ");
给程序集中又若干了类 继承自 IMyInterFace。
我现在需要获得 MyAssembly 中 全部继承自 IMyInterFace 的类,帮定在 web页面中的 DropDownList 控件上;
让用户选择,然后根据用户的选择生成相应的对象
例如   IMyInterFace MyObject  =  ?????
然后我需要 执行 借口的某个方法   MyObject.DoSomething();问题 如果根据用户的选择动态的实例化对象???请代码指示!!!

解决方案 »

  1.   

    有一个接口 IMyInterFace 
    有一个程序集 MyAssembly 
    该程序集 储存在 E:\MyAssembly.dll 文件中 
    可以用如下代码获得这个程序集 
    System.Reflection.Assembly o = System.Reflection.Assembly.LoadFile(@"E:\MyAssembly.dll "); 
    该程序集中有若干了类 继承自 IMyInterFace。 
    我现在需要获得 MyAssembly 中 全部继承自 IMyInterFace 的类,绑定在web页面中的 DropDownList 控件上; 
    让用户选择,然后根据用户的选择动态实例化对象 
    例如   IMyInterFace MyObject  =  ????? 
    然后我需要 执行 接口的某个方法   MyObject.DoSomething(); 问题 如何根据用户的选择动态的实例化对象???请代码指示!!!
      

  2.   

    自己解决了!!
    System.Reflection.Assembly ass = System.Reflection.Assembly.LoadFile(@"E:\MyAssembly.dll ");
    Type type = ass.GetType(DDL_Classes.SelectedValue);
    ConstructorInfo ci = type.GetConstructor(System.Type.EmptyTypes);return (IMyInterFace )ci.Invoke(null);