30得票1回答
如何创建一个可以与TransactionScope一起使用的类?

我想知道,如果我想创建一个类来执行某些操作,并且我希望它能够在TransactionScope中使用,我需要实现什么? 也就是说:我的类需要知道它在事务中,但是它如何在提交或回滚时得到通知?在回滚时,我该如何实际回滚? 我认为我的类会有像“添加”、“更新”和“删除”之类的方法,这些方法只修...

29得票5回答
分布式事务管理器(MSDTC)的网络访问已被禁用。

错误: 分布式事务管理器(MSDTC)的网络访问已禁用。请使用组件服务管理工具在 MSDTC 的安全配置中启用 DTC 的网络访问。using (System.Transactions.TransactionScope ts = new System.Transactions.Transac...

15得票2回答
使用SqlConnection / System.Transactions实现每个请求的会话管理

我刚开始在一个项目中使用Dapper,以前几年大多使用NHibernate和EF等ORM。 通常在我们的Web应用程序中,我们实现每个请求一个会话,从请求开始时启动事务,在请求结束时提交事务。 当直接使用SqlConnection/System.Transactions进行工作时,我们应该...

13得票2回答
追踪交易为什么会升级到DTC。

有没有办法精确定位为什么一个 System.Transaction TrasactionScope 会升级到 DTC?我们的一个组件似乎会升级事务,而所有其他(看起来非常相似的)组件都不会升级。 是否有任何信息可用于了解升级的原因,以及如何找到并观察这些信息?可以使用 SQL Profile...

11得票2回答
使用TransactionScope:System.Transactions.TransactionAbortedException:事务已中止

我们正在尝试使用以下代码进行间接嵌套事务,使用的是.NET 3.5和SQL Server 2005。 MSDN指出,当使用TransactionScope时,在事务内打开第二个连接(即使是连接到同一个数据库)时,事务会升级。void RootMethod() { using(Trans...

7得票4回答
避免在System.Transactions中出现事务升级的策略

根据我之前的问题的回答,如果在事务期间打开多个连接,即使这些连接具有相同的连接字符串,事务也会从LTM提升到DTC。那么,我的下一个问题是,有什么策略可以避免这种“特性”?基于资源使用,我想尽可能地确保使用LTM。在适当的面向对象业务逻辑层中,我唯一能想到的方法是在数据访问层创建请求级别的静态...

7得票2回答
System.Transactions的实际用途是什么?

我看到了System.Transactions命名空间,想知道我是否可以使用这个命名空间来创建RDMBS? 但是当我看到一些例子时,我不明白System.Transactions除了简单的try catch和获取成功/失败结果之外还做了什么? 这是MSDN网站上的一个示例,我知道它可能非常...

7得票2回答
.NET持久性资源管理器用于事务性文件系统访问

我正在尝试理解在C#中使用System.Transactions命名空间的用途。我在MSDN上找到了一些关于使用资源管理器的文档,但只详细介绍了易失性内存资源管理器(例如Transactional)。我基本上正在寻找可以在TransactionScope内部使用的东西,就像Transactio...