现在的位置: 首页 > 综合 > 正文

Silverlight应用框架雏形:MVVM+WCF RIA Service + 业务逻辑层+自写的实体框架

2013年04月30日 ⁄ 综合 ⁄ 共 850字 ⁄ 字号 评论关闭

经过1个月的学习,从接触Silverlight到现在完成一个初具企业级应用框架的实现,确实感觉比较累。本来底层定型很快,但由于选型时争论比较长,拖了点时间,而我本来只负责底层,但由于客户端小组进展比较慢(原因一言难尽),这个星期我开始接手这方面的工作,经过几天的努力,在UI组兄弟们的配合下,今天终于完成了从数据库到页面的整个应用架构的实现,效果不错,而且还比较适合大规模开发。下面是整个架构体系:

实体框架:主要包括数据库底层访问和实体访问封装,可支持多种数据库访问,并可在一个应用上(WebApp)同时访问不同数据库,可根据需要自由切换。实体(包括表现实体)可由工具自动生成,实体映射采用元属性实现。实体访问:DBContext可以自动构造SQL语句进行相关操作。复杂查询可以直接利用SQL执行,返回数据集后在业务逻辑层进行封装或处理,实在不行还可以继承基类,实现自己个性化得数据访问方式(实体框架可参考我原来的博文,原来只是解剖一下,这次我将自己的想法基本实现了。当然缓存和数据库差异只是简单的处理了一下)。

业务逻辑层:进行业务逻辑处理,基本的业务逻辑也可以用工具生成。实体属性参照也在这里处理,我的实体增加了两个字典属性:值参照和路径参照。在这里处理的好处是简单,客户端实现起来还是比较麻烦。

WFCRIA服务层:两个功能,一是安全检查,二是简单的调用相关的业务逻辑。基本的服务都封装在基类中,具体的服务类主要用于定义非标准服务。

客户端数据服务层:负责与服务端打交道,可代码生成。

MVVM模式:采用微软开源的轻量级类库。做了大量的改造,实际上只是利用了这个框架的消息类。

VM:大量的利用了属性索引器绑定功能,做了基类,可实现一般业务的大部分功能。标准功能可也可以代码生成。

V:V的代码很少,基本都是标准的。

整个框架到今天,有了一个标准的实现,而且效果还不错,特此纪念一下,也感谢同事们的努力,人少但力量不小。当然也希望我的做法对大家有借鉴。

PS:其实很多东西本来可以封装的,想想还是算了,太累。

 

抱歉!评论已关闭.