C# 插件式编程
程序员文章站
2022-05-23 18:57:25
定义插件接口类,接口中定义需要的沟通方法 在组件中某类继承该插件接口,实现方法 //加载组件DLL Assembly ab = Assembly.LoadFrom(file); Type[] types = ab.GetTypes(); foreach (Type t in types) { //如... ......
- 定义插件接口类,接口中定义需要的沟通方法
- 在组件中某类继承该插件接口,实现方法
-
//加载组件dll
assembly ab = assembly.loadfrom(file);
type[] types = ab.gettypes();
foreach (type t in types)
{
//如果某些类实现了预定义的插件接口,则认为该类适配与主程序(是主程序的插件)
if (t.getinterface("预定义的插件接口")!=null)
{
object o = ab.createinstance(t.fullname);//创建该类实例
methodinfo method = t.getmethod("方法名");//获得该类某方法
object returnvalue = method.invoke(实例名, 函数参数)//调用该方法
}
}
推荐阅读
-
JavaScript函数式编程究竟是什么?
-
JavaScript函数式编程(Functional Programming)声明式与命令式实例分析
-
JavaScript函数式编程(Functional Programming)高阶函数(Higher order functions)用法分析
-
JavaScript函数式编程(Functional Programming)箭头函数(Arrow functions)用法分析
-
JavaScript函数式编程(Functional Programming)组合函数(Composition)用法分析
-
C#编程实现动态改变配置文件信息的方法
-
函数式编程语言有哪些(程序员常用的编程语言介绍)
-
C#多线程编程中的锁系统(二)
-
详解C#编程中.NET的弱事件模式
-
实例讲解python函数式编程