专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > .NET分析设计

事务添加数据放在那一层比较好?解决办法

发布时间:2011-06-23 20:29:10 文章来源:www.iduyao.cn 采编人员:星星草
事务添加数据放在那一层比较好?
是BLL层 好 还是 DAL层好?

------解决方案--------------------
一个DAL操作,必定有以下的抽象:

1. 方便地查询。例如 一个可以支持 IQueryable 查询的机制。
2. 方便地更新。例如 Save<T>(T obj)。它包括新增或者修改,如果这个obj是从事务中查询的,那么就是更改。
3. 方便地删除。例如 Remove<T>(T obj)。
4. 事务的提交和回滚。


你在BLL中调用所谓的DAL的什么“增删改查”操作么?既然你连查询一下数据库、修改一下数据库都在BLL层调用,那么凭什么对于事务提交和回滚这么重要的操作就不调用?
------解决方案--------------------
所以综合起来,你应该给一个开关,来让Bil决定是否启用事务

bil有决定权,但是具体细节他没必要知道,他只需要知道我有决定是否启用事务的权利就ok了
------解决方案--------------------
一般地加个重载不就可以解决了么
执行SQL的方法还不是业务逻辑层来的需求嘛,单纯的处理数据的方法放在DAL,这样BLL中的方法看起来也会明朗很多
------解决方案--------------------
探讨
我以前是这样做的
不过刚刚看了一篇文章,说 事务 添加 数据 之类的操作放在BLL层

不过这样如果要是操作多个表, 不是每个组合都要在DAL里面写一个方法?


引用:
所以综合起来,你应该给一个开关,来让Bil决定是否启用事务

bil有决定权,但是具体细节他没必要知道,他只需要知道我有决定是否启用事务的权利就ok了

------解决方案--------------------
探讨
我以前是这样做的
不过刚刚看了一篇文章,说 事务 添加 数据 之类的操作放在BLL层

不过这样如果要是操作多个表, 不是每个组合都要在DAL里面写一个方法?


------解决方案--------------------
每个框架的实现都不一样,这也没有条条框框,只要对开发有利就好
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: