表模块和事务脚本之间的区别

3 .net c# architecture

我不明白Martin Fowler说这些模式之间的区别是什么:

事务脚本按程序组织业务逻辑,其中每个过程处理来自演示的单个请求.

表模块单个实例,用于处理数据库表或视图中所有行的业务逻辑.

您可以通过两种方式将Transaction Scripts组织到类中.最常见的是在一个类中有几个Transaction Scripts,其中每个类定义相关Transaction Scripts的主题区域.这很简单,对大多数情况来说是最好的选择.另一种方法是使用Command模式[Gang of Four]将每个Transaction Script放在自己的类中(图9.1).

所以我可以在表模块中做到这一点我可以为每个表示请求提供方法,因为我可以在事务脚本模式中使用DataSet或RecordSet.那么我应该如何知道我的域逻辑中应该使用哪种模式?

com*_*ech 6

我认为,基本的区别在于所涵盖的业务逻辑的范围.在表模块中,您仅限于一个表或视图,但事务脚本不是.

例如,假设您有一个跟踪金融交易的表,并且您的业务逻辑规定每次更新金融交易时,与交易相关的预算也会在单独的表中更新.

对于表格模块,您需要两个程序,一个用于财务交易,一个用于预算.

对于事务脚本,您只需要更新两个表.