网站大量收购闲置独家精品文档,联系QQ:2885784924

浅谈业务逻辑层的组合.doc

  1. 1、本文档共2页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
浅谈.NET业务逻辑层的组合 在《企业应用架构模式》中,Martin Flower提到过几种主要的企业应用架构模式主要是:事务脚本模式、活动记录模式、表模块模式和领域模型模式。 事务脚本模式主要是事件驱动的处理过程,上层需要什么操作它就响应什么操作,这是最简单的一种组织数据的一种模式;活动记录模式可以简单的理解为一个既包括属性有包括操作的类,它对应于数据表中的一条记录;表模块主要是指一个与整个表建立起了一种对应关系的类,由于.NET开发工具对这种模式很好的集成,所以表模块在.NET中使用比较普遍。这三种模式主要是以数据为核心。随着企业应用逻辑的复杂化,上面三种模式在一定的程度上都表现的力不从心,于是出现了领域模型。领域模型模式主要是将业务领域中的实体建模成一个对象,由这些对象来执行相关的业务逻辑。在.NET中,业务逻辑层一般包括:领域中的对象模型、实体、验证规则、验证和流程。 领域中的对象模型主要是现实实体抽象为的对象,对象中既包括逻辑的数据又包括处理业务逻辑的方法。在实际的开发过程中通常命名为Service,主要是提供给UI调用的一个接口。UI可以将一些业务逻辑放在对应的Service中。当业务比较复杂时可以抽象出一个服务层,向UI提供一个简单的API。 业务逻辑层中的实体主要是指DTO(Data Transfer Object),在DTO中只包含数据成员即.NET中的属性,在业务逻辑层中DTO主要是用于数据的传输功能,简化各个接口的形式,从而降低各个模块之间的耦合度。在.NET中DTO通常定义为可以序列化的实体,这样就可以完成DTO在各个应用程序之间通讯。DTO的数据主要是从数据库中检索出来的数据转化而来的, DTO结构比较简单它可以是数据库中很多表的数据并集,由于DTO只包含属性,在存储方面减少了存储空间,同时为中间接口的使用提供了基础。 业务逻辑层主要是组织系统中的业务逻辑及处理流程,所以必要的验证规则和验证是必不可少的。通过添加业务逻辑验证规则和验证,从而使得系统具有良好的可靠性和容错性。在.NET中验证规则主要是通过Attribute(属性)来实现的,Attribute的可以在运行时期改变对象的行为,在Enterprise Library中提供了一个Validation模块用于验证的,该模块中提供了很多的ValidatorAttribute和一个名为ValidatorManager的类,方便开发人员快速完成规则和验证。当然开发人员也可以自己编写自己的规则,在.NET中开发人员编写的rules Attribute主要是继承于ValidationAttribute,然后根据不同的rule实现其中的IsValid(object value)方法。 业务逻辑层中的数据流程主要体现在如何处理各个实体的交互问题,比如说是否使用缓存来存储实体,是否序列化实体等等。 在实际应用开发中不是单一的采用某一个模式,很多情况下是几个模式同时使用,不如说在DAL中使用活动记录模式,比如说LINQ to SQL,将多余的业务逻辑转移到领域模型对象中去,然后将从数据库查询出来的结果转化为DTO实体提供给UI层显示。 --重庆亚派科技 第2页

文档评论(0)

ktj823 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档