【发布时间】:2009-11-20 22:14:35
【问题描述】:
我正在开发一个 .Net 2.0 应用程序,需要在我的代码中包装一些数据库事务。后端是 SQL Server 2008。
我已经离开 .net 几年了,我最后一次进行任何事务处理是在 .Net 1.1 中使用服务组件。我知道 TransactionScope,并且想知道这是否是现在处理事情的好方法。
另外,在 .Net 3.5 中,我假设还有其他方法可以做到这一点,比如 WCF?只是想知道是否有人可以将我指向一两篇文章。非常感谢。
【问题讨论】:
-
您可以使用
SqlConnection和SqlCommand运行原始 SQL 查询并将其包装在事务周围,但我建议考虑使用某种 ORM。运行原始 SQL 查询并不是那么好,它“接近代码”运行,但你不能轻易测试它,一个失误可能意味着你把事情搞砸了。 -
我还会考虑编写存储过程来封装您需要处理的不同事务。这将使事务范围保持在数据库层。
标签: sql-server-2008 .net-2.0 transactionscope