.net中一个事务如何跨越多个方法?

frenzieddragon 2006-07-14 08:33:20
完成一个系统功能需要多个类的多个方法协同实现,他们需要在同一个事务中,要么一起实现,要么一起撤消。我所知道的.net中2种控制事务的方法,一种是使用Connection来控制事务,即这些方法使用同一个Connection,这样就需要在这些类中传递Connection,这样的代码结构会显得很难看;第二种是使用分布式事务,但是我的系统不需要实现分布式,感觉这样做会浪费性能。

不知道是否有其他控制事务的方法,或者我所有的2种中哪一种比较好?
...全文
508 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
P908 2006-09-09
  • 打赏
  • 举报
回复
将若干个操作封闭成COM+
真相重于对错 2006-07-18
  • 打赏
  • 举报
回复
COM+
ms-help://MS.MSDNQTR.2003FEB.2052/vbcon/html/vbwlkWalkthroughCreatingTransactionalQueueWithCOMServices.htm
frenzieddragon 2006-07-18
  • 打赏
  • 举报
回复
TranasctionScope是.net2.0才有的吧?郁闷,用不上
frenzieddragon 2006-07-18
  • 打赏
  • 举报
回复
Context怎么做?因为是B/S模式,每个用户都应该有自己的Context才对。
Overriding 2006-07-18
  • 打赏
  • 举报
回复
http://blog.csdn.net/zhanqiangz/archive/2004/12/16/218301.aspx
com+的事务可以解决。
Ivony 2006-07-17
  • 打赏
  • 举报
回复
不要传来传去,想办法实现Context的概念即可,例如最简单的,弄个单例来做Context,或者参考享元模式。
xingdongfang 2006-07-16
  • 打赏
  • 举报
回复
System.Transaction.TranasctionScope
listhome 2006-07-16
  • 打赏
  • 举报
回复
TranasctionScope
ByWangler 2006-07-15
  • 打赏
  • 举报
回复
MTS微软事务处理服务试一试
zahuifan 2006-07-14
  • 打赏
  • 举报
回复
用Transaction类。把Transaction放在Session里,最后调用Transaction.Commit().
sweet12345 2006-07-14
  • 打赏
  • 举报
回复
每个方法里面都用一个参数Connection和Transaction,可以
copall 2006-07-14
  • 打赏
  • 举报
回复
就用第一种~多了Connection代码怎么就难看了??
frenzieddragon 2006-07-14
  • 打赏
  • 举报
回复
因为事务是在业务逻辑层控制,那么Connection需要在业务逻辑层创建并传递给数据访问层,有时候还需要在业务逻辑层之间传递,那么整个业务逻辑层和数据访问层将充斥着Connection的参数,所以说很难看,而且也破坏了业务逻辑层的结构。这是我不想用第一种方法的考虑。

17,740

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET Framework
社区管理员
  • .NET Framework社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧