基于DotNet构件技术的企业级敏捷软件开发平台 AgileEAS.NET - 插件运行容器
上一篇AgileEAS.NET之插件接口IModule中我们介绍了EAS.NET模块插件契约,在本文我们将介绍一下调用插件的运行容器,即平台。
AgileEAS.NET平台最早是应用于基于WinForm技术开发管理信息系统应用的,所以基于WinForm的运行容器最为成熟,在应用WinForm技术的运行容器我们提供了三种:传统的WinForm容器、基于智能客户端技术的运行容器和基于WinForm和WebForm技术结合的ActiveXForm容器,也提供了基于纯WebForm技术的运行容器。
废话不说了,下面我贴出传统WinForm容器和SmartClient容器的运行效果:
看不清楚图片的朋友,请打开原图看吧,这是基于WinFrom技术的插件运行效果,目前插件在容器中的运行方式有两类,第一类是直接嵌入到容器界面中,如上图一个标签页代码一个模块插件,另一类是以独立的WinForm方式运行,如下图:
我们提供基于导航列表以及工具条和菜单结合的两种模块插件导航方式,默认情况下,左边导航列表或者导航树自动收起的,在具体应用项目中,可以根据情况选择何种导航方式,菜单或者导航中的一个叶子项均指向一个目标模块插件的。
当某个操作员(账户)登录平台后,平台权限检查系统加载登录操作员所拥有执行权限的模块并加载到业务导航栏和导航菜单,最后秀一下登录界面。
特别提示一下,AgileEAS.NET平台运行容器为了支持应用开发商的发布和变更,对运行容器的界面做了一套资源系统,应用开发商可以在配置文件中变更资源文件以达到变更系统名称、显示图片的目的,比如:
SmartClient运行容器在标准WinForm容器基础上,增加了智能客户端支持:包括应用系统的智能部署升级及可选的分布式数据访问,下面简单展示一下WebFrom运行容器。
在这些运行容器中,平台调用插件,但是在一些应用中,模块插件需要调用别的模块插件,这个又怎么做呢,我们抽取了一个基础接口IApplication:
IApplication
IApplication接口中,我们定义了RunModule方法,插件可以通过AgileEAS.NET应用上下中的IApplication实现对其他IModule的调用。
作者:魏琼东
出处:http://www.cnblogs.com/eastjade
关于作者:有13年的软件从业经历,专注于中小软件企业软件开发过程研究,通过在技术与管理帮助中小软件企业实现技术层面开源节流的目的。熟悉需求分析、企业架构、项目管理。现主要从事基于AgileEAS.NET平台的技术咨询工作,主要服务于医疗卫生、铁路、电信、物流、物联网、制造、零售等行业。如有问题或建议,请多多赐教!
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,可以通过mail.james@qq.com 联系我,也可以加入QQ群:113723486、199463175、116773358、116773358、212867943、147168308、59827496、193486983、15118502和大家共同讨论,非常感谢。