首页 > 代码库 > .NET开源插件内核

.NET开源插件内核

http://www.cnblogs.com/newmin/

 

.NET开源插件内核;支持WinForm和Asp.net. 设计的初衷是:利用“开发平台 + 插件内核"来开发子系统,及对系统进行一些扩展, 定制化开发。

与很多大牛实现的插件不同的地方在于,插件内核并不需要建立的ASP.NET MVC上,也不需要在插件里建立View,Controller,

有可能插件仅仅提供一个Rest API。 插件应该属于底层抽象,不依赖于特定的框架和工具。

 

如何使用?

1.创建插件宿主

  实现接口:IPluginHost

2. 编写部署插件    编写插件,并放于指定的目录(默认plugins下),插件需实现IPlugin接口

3. 连接插件:

  IPluginHost.Connect()

 

插件目录截图如下:

<iframe id="iframe_0.3690282613884277" src="data:text/html;charset=utf8,%3Cimg%20id=%22img%22%20src=%22https://raw.githubusercontent.com/newmin/ntpk/master/snapshot1.png?_=4196208%22%20style=%22border:none;max-width:1274px%22%3E%3Cscript%3Ewindow.onload%20=%20function%20()%20%7Bvar%20img%20=%20document.getElementById(‘img‘);%20window.parent.postMessage(%7BiframeId:‘iframe_0.3690282613884277‘,width:img.width,height:img.height%7D,%20‘http://www.cnblogs.com‘);%7D%3C/script%3E" frameborder="0" scrolling="no" width="320" height="240"></iframe>

实现机制:利用AppDomain.LoadAssembly()来实现动态加载,接口需实现IPlugin接口,

需实现IPluginHost(插件宿主)来实现插件的管理,安装和升级。 原理很简单,细节教多。

 

PS: 写过很多东西,直接拿出来开源了。造轮子很辛苦,求fork支持一下。

托管地址:https://github.com/newmin/dotnet-plugin-kernel

应用案例:http://github.com/newmin/cms

 

.NET开源插件内核