C#如何实现功能模块化,并自由的添加和却掉功能?
将要用C#做一个大的项目,需要实现以下功能要求:功能必须模块化,所有的功能都可以单独的简单的被添加到主项目中去,例如在进行功能追加的时候不用重新发布EXE文件,而通过动态...
将要用C#做一个大的项目,需要实现以下功能要求:功能必须模块化,所有的功能都可以单独的简单的被添加到主项目中去,例如在进行功能追加的时候不用重新发布EXE文件,而通过动态加载DLL就可以实现。请问有没有这样的实现方法,怎么做比较好?
展开
2个回答
展开全部
这就是插件,主要用到的技术是接口和反射。
新建一个独立的项目,专门定义一个接口,接口里面最基本的要包含类似run的方法
在主项目里面引用此接口,然后通过寻找某路径下的dll文件,反射,如果有此接口类型,则添加进界面某列表,供用户选择和调用(你调用接口方法就行)
对于发布后的每个插件,都要引用接口,实现相应的方法。编译发给用户,放到指定文件夹下,就可以用了。
追问
先谢谢你的回答,调查了一下说反射有点慢,有没有性能好点的方法?
追答
没有影响。
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询