Net搭建的插件框架!

发布时间2018/12/5 15:37:45

下载次数 0 次 访问量106 次

免费 下载框架
http://code68.com/Resources/RDetails454.html

 

感觉还意思,,.Net实现插件式模块化开发


1:插件分哪些类别?

功能插件-(附件预览/Excel导入导出/生成pdf) 等,,,
业务插件--(用户管理/部门管理/角色管理/权限管理/工作流) 插件 等。。。
数据插件-(楼盘数据/人数据/资讯数据/地理数据) 等暴露api给业务插件调用
每个插件都是独立的MVC站点,


2:插件直接怎么相互调用?
@Html.Action("Index", "Static", new { pluginName = "Static" ,callback="/userlist/saveuser"})
接口调用,使用插件的时候设置回调插件
URL直接访问插件控制器, 比如访问用户的列表插件 /User/List

3:插件自身包含哪些内容
    插件的资源文件(.cshtml/Js/CSS/Img)等
     
4:插件化的好处
    功能模块最大化服用,低耦合,高内聚,
    每个程序员 维护好自己的插件,提供接口和控制器 给其他同事 直接调用

5:例子下载:
     http://www.code68.com/webSite/HelpDetails


步骤:

1、下载插件源码完整Demo

来吧,开启插件开发之旅。。。
完整的一套可运行的插件嵌入MVC Demo 

2、初始化框架

配置webconfig /* Plugin1插件框架配置DLl目录 */ 
PluginMvc.Framework.Bootstrapper.Initialize(true);
/* Plugin1插件框架配置DLl目录 */

配置webconfig <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <!-- Plugin2插件框架配置DLl目录-->
      <probing privatePath="App_Data/Dependencies" />
      <!-- Plugin2插件框架配置DLl目录-->      
    </assemblyBinding>
  </runtime>

 

3、添加Dll引用?

效果预览

项目插件目录:
每个插件动态编译到Plugins目录支持热插拔

【2】
Global配置插件启动代码:
实现动态加载Plugins目录下所有插件
【3】
webconfig配置插件AppDomain目录:
实现动态控制器分离加载
【5】

主站点访问插件页面:
控制器/Action 访问


 

也可直接在View视图页面通过MVC Html.Action渲染插件页面

  @Html.Action("Index", "Bootstrap", new { pluginName = "Bootstrap" })
                            

 

 

 

 案例:

 

 

 

 

 

 

  

 

 

首页:

http://miankaifa.com

体验地址

http://miankaifa.com/Login/Default

 

 

 
作者:免开发
出处:http://www.code68.com/ 
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。如有问题,可以邮件:code68@163.com  微信:code68 QQ:1362250488联系我,非常感谢。 

扫下面的二维码关注我的微信公众号。 

网友评论

发表评论

欢迎评论哦!