C# 插件式編程

  • 定義插件接口類,接口中定義須要的溝通方法
  • 在組件中某類繼承該插件接口,實現方法
  •    

    //加載組件DLL 函數

    Assembly ab = Assembly.LoadFrom(file); spa

    Type[] types = ab.GetTypes(); 插件

    foreach (Type t in types) 繼承

    { 接口

    //若是某些類實現了預約義的插件接口,則認爲該類適配與主程序(是主程序的插件) it

    if (t.GetInterface("預約義的插件接口")!=null) object

    { foreach

            object o = ab.CreateInstance(t.FullName);//建立該類實例 file

            MethodInfo method = t.GetMethod("方法名");//得到該類某方法 程序

            object returnValue = method.Invoke(實例名, 函數參數)//調用該方法

    }

    }

相關文章
相關標籤/搜索