Mediar.Framework, 一个MVC架构

        做了几年程序员,渐渐的积累了一些经验。看见网上越来越多的架构,自己总想写点什么。终于闲了下来,结合做过的项目,再从网上东拼西凑,于是一款幼稚架构产生了 – Mediar.Framework.。相信它却实与众不同,希望能给大家带来一丝的启发。

     Mediar.Framework 是一个WIN程序架构,它含盖了从底层到界面,开发过程中各个层次。它给你体贴周到的照顾,甚至给你提供一个代码生成工具,为你完成70 -95 % 的代码,真可以说让你开发如添羽翼,让你从代码中解放出来,去关心真正的业务。可能有人会问性能如何?老实说性能确实不怎么样,但是对资源强大的客户端,应该是小菜一碟。

    下面详细介绍一下架构,发一张图看看结构:

 

 

最低层是Data Access ,使用MS企业类库里API,主流数据库应该都支持。ModelBIZOBJECT,同时主要的业务逻辑也放在里面,界面就是由它控制,就是mvc Model.,实体中的域在UI里和UI里的控件进行绑定。Factory 主要创建实体,集合等 ,并且通过Factory 对数据库进行访问,在model初使化时,factory 被注入到了model,每个Model都有对应的Factory 诸如数据字典类型的业务,使用ObjectDataholder ,并成为model 的域,当然ObjectDataholder中要包函另外一个model. ObjectCollectionDataHolder 是用来处理一对多关系,在一个model 里包含另外一个实体的集合. UI相比起来就比较傻瓜,仅仅做一些绑定和显示方面的设置。因为一些仅有的业务逻辑还放到了CoreUI中,CoreUI中有一些其它的常日界面,UI中类要从coreUI 中继承。CustomControl 里主要包装了grid view combo,因为有些业务需要处理,当然也可以加一些其它的控件。下一步就准备做一个验证数字,EMAIL等等的textbox

 整个流程是这样,当UI初使化时,UI页面绑定MODEL,最后调用coreui 进行处理。CoreUI 处理UI元素,并从model中获取数据,model自然会调用factory , factory 调用Dataaccess , Dataaccess 取得数据并返回。 Dataaccess MarshalByRefObject  从继承,支持远程化,可以把它部署到服务器上。

 架构对表有个小小的要求,所有的表都要有这些字段。

UniqueID

Guid

主建

LastUpdatedByUser

string

 

LastUpdatedDateTime

Datetime

 

RecordVersion

timestamp

 

 

写的不好,还是看代码吧。下载包里有一个MDF文件,是SQL文件,可以附加到你的SQL里。DAOGen-Meidar.csgen 是生成代码模板,不过使用之前需要安装myGeneration

相关:
     Mediar.Framework --一个MVC架构
     Mediar.Framework --对象mapping 
     Mediar.Framework--使用反射来声明Remoting wellknown服务
     Mediar.Framework -- 业务的实现1(UI的绑定) 

 

posted @ 2006-09-13 19:50  瑞德船长  阅读(4497)  评论(10编辑  收藏  举报