前面的文章AgileEAS.NET之插件接口IModule和AgileEAS.NET之插件运行容器中对插件的基本契约宝义和运行容器做了一个介绍,但是在开发中并不是对每个模块都去实现这样的接口,我们在基于一些曲型的应用中提供了一些基础实现,应用开发者可以选择继续这个基础实现以实现特定的功能。
在WinForm应用中,默认提供了ModuleForm、ModuleControl两个IModule的实现,开发者在做应用开发时只需要重写GUID,ModuleName,Description属性及Run方法就可以了。
在WebForm应用中,同样提供了ModuleForm和ModuleControl这样的实现,具体请参考类库帮助。
下面来个例子:
class PayCalc2 : EAS.Windows.UI.Forms.ModuleForm { public PayCalc2() { InitializeComponent(); } public override string ModuleName { get { return "贷款计算机器"; } } public override Guid Guid { get { return new Guid("CD151DE6-0475-4d68-9DFE-AD272112B318"); } } public override string Description { get { return "用于分析房贷的小工具"; } } public override void Run(params object[] parameters) { this.MdiParent = null; this.ShowDialog(EAS.Windows.Application.Instance.Shell); } //其他业务代码 }
除些之外,也提供了涉及ORM数据对象与界面的绑带一部分基础实现,这部分我将在后面文章详细说明。
下面的文章我将介绍基于属性标记的模块插件实现。