transactionscope相关内容

TransactionScope 过早完成

我有一个在 TransactionScope 内运行的代码块,在这个代码块中我对数据库进行了多次调用.选择、更新、创建和删除,整个范围.当我执行删除时,我使用 SqlCommand 的扩展方法执行它,如果它死锁,它将自动重新提交查询,因为此查询可能会遇到死锁. 我相信当遇到死锁并且函数尝试重新提交查询时会出现问题.这是我收到的错误: 与当前连接关联的事务已完成但尚未处理.必须先释放事务 ..
发布时间:2022-01-23 21:48:08 C#/.NET

在什么情况下 SqlConnection 会自动加入环境 TransactionScope 事务?

SqlConnection 在事务中“登记"是什么意思?是不是意味着我在连接上执行的命令会参与到事务中? 如果是这样,在什么情况下 SqlConnection 会自动加入环境 TransactionScope 事务? 查看代码注释中的问题.我对每个问题的答案的猜测跟在括号中的每个问题之后. 场景 1:在事务范围内打开连接 使用 (TransactionScope 范围 = ne ..
发布时间:2022-01-23 21:20:18 C#/.NET

TransactionScope 不适用于 DB2 提供程序

我一直在尝试将 TransactionScope 与 DB2 数据库一起使用(使用 DB2 .Net provider v 9.0.0.2 和 c# 2.0)根据 IBM 应该支持. 我已经尝试了所有可以在 IBM 论坛上找到的建议(例如 这里) 无济于事. 我在我的 XP Sp2 机器上启用了 XA 事务,也在 Win 2003 Server 机器上尝试过,但我一直收到臭名昭著的错误 ..
发布时间:2022-01-14 22:11:32 其他开发

Linq to sql 同一事务中的多个数据上下文

我正在做一个项目,我有多个存储库可以从中获取数据不同的表.我所有的存储库都是独立的,它们创建新的 dataContext,将行添加到表并应用提交更改命令.现在,如果在我的服务中,有一种情况我必须将数据插入到多个表中,但它应该发生在一个事务中.我可以使用 TrnasctionScope 的东西来实现,但这需要相同的 dataContext.当我使用 StrucutreMap 创建我的对象时,我无法获 ..
发布时间:2022-01-07 16:04:05 其他开发

事务范围超时 10 分钟

我在 C# 中有一个长期运行的 TransactionScope.我告诉示波器它应该有很长的时间跨度,但我仍然超时.什么可能导致这种情况? TransactionOptions transactionOptions = new TransactionOptions();transactionOptions.IsolationLevel = IsolationLevel.ReadCommitted ..
发布时间:2022-01-06 20:53:46 C#/.NET

即使未调用 System.Transactions.TransactionScope.Commit() 也提交了数据

在什么情况下,包裹在 System.Transactions.TransactionScope 中的代码仍然可以提交,即使抛出了异常并且最外层的作用域从未被调用过? using (var tx = new TransactionScope()) 中有一个顶级方法,它以相同的方式调用也使用 TransactionScope 的方法. 我正在使用带有关联表适配器的类型化数据集.可能是由于某 ..
发布时间:2022-01-06 20:46:43 C#/.NET

为什么 TransactionScope 不适用于实体框架?

请看下面的代码.如果我初始化多个实体上下文,那么我会在 仅第二组代码 上得到以下异常.如果我注释掉第二组就可以了. {"底层提供程序在打开时失败."} 内部:{“与底层事务管理器的通信失败."} 内部:{“错误 HRESULT E_FAIL 已从对 COM 组件的调用返回."} 请注意,这是一个示例应用程序,我知道连续创建 2 个上下文没有意义.但是,生产代码确实有理由在同 ..
发布时间:2022-01-06 20:33:22 C#/.NET

实体框架中的多个 SaveChanges 调用

我正在基于实体框架构建自己的自定义存储库,并且正在创建一些扩展方法,这些方法允许我将部分视图模型保存为实体模型,因此我正在构建自己的 Add 和 Update 方法. 目前,每个方法都在最后调用了来自 DbContext 的 SaveChanges(),这意味着对于每个模型,都会调用一个调用. 我正在为 MVC4 站点构建这个基本的 DAL 模式,这意味着大部分时间我将访问 1 个模型 ..
发布时间:2022-01-06 20:32:25 其他开发

TransactionScope:它变得更好了吗?

当 TransactionScope 首次出现时,我遇到了一些严重的问题,以使其在我的开发机器 (XP) 和我们的数据库服务器 (Windows Server 2003) 之间工作. 当我深入研究它时,这似乎是一个棘手且普遍的问题,有可能成为生产中的一个头疼问题,所以我决定不以这种方式处理事务(尽管我非常喜欢这种语法并且我真的很想让它工作). 这些问题是否仍然存在,或者使用起来是否安全 ..
发布时间:2022-01-06 20:31:01 C#/.NET

SQL Server 和 Oracle 的 EF 和 TransactionScope 没有升级/跨越到 DTC?

有人可以就这个话题向我更新吗? 我希望在我的应用程序中同时支持 SQL Server 和 Oracle. 是否可以让以下代码(在 BL 中)同时适用于 SQL Server 和 Oracle,而无需升级/跨越到分布式事务 (DTC)? //dbcontext 是之前创建的,两个存储库将使用相同的 dbcontext使用 (var ts = new TransactionScope() ..
发布时间:2022-01-06 20:30:21 数据库

有没有办法将 TransactionScope 与现有连接一起使用?

我有一些代码的工作原理类似于 TransactionScope 的建议使用,但具有环境连接而不是环境事务. 有没有办法将 TransactionScope 对象与现有连接一起使用,或者 .Net 框架中是否有替代方案? 解决方案 其实只有一种方法. connection.EnlistTransaction(Transaction.Current) 它有效,如果没有必要,它不会将交 ..
发布时间:2022-01-06 20:27:19 C#/.NET

TransactionScope 和多线程

我想知道在处理多线程时如何以正确的方式使用 TransactionScope 类? 我们在主线程中创建了一个新的作用域,然后我们产生了几个工作线程,我们希望这些线程参与到主作用域中,例如,如果作用域从未完成,则在每个工作线程上调用回滚. 我在内部使用 ThreadStaticAttribute 阅读了有关 TransactionScope 的内容,这使得上述操作变得不可能/非常困难 - ..
发布时间:2022-01-06 20:26:17 C#/.NET

重构 ADO.NET - SqlTransaction 与 TransactionScope

我“继承"了一个小的 C# 方法,该方法创建一个 ADO.NET SqlCommand 对象并循环遍历要保存到数据库 (SQL Server 2005) 的项目列表. 现在,使用的是传统的 SqlConnection/SqlCommand 方法,为了确保一切正常,将两个步骤(删除旧条目,然后插入新条目)包装到 ADO.NET SqlTransaction 中. using (SqlConn ..
发布时间:2022-01-06 20:19:08 数据库

C# - System.Transactions.TransactionScope

我对 TransactionScope 类很好奇. 在大多数情况下,我认为它是用于数据库连接(这就是我使用它的目的). 我的问题是,您可以将任何代码放在 TransactionScope 的 using 块中以使其具有事务性吗?MS 文档对此并不清楚. 如果它可以用于使数据库连接以外的代码成为事务性的,那么支持哪些?如果它能让 System.IO.File 操作成为事务性的,我觉 ..
发布时间:2022-01-06 20:16:29 C#/.NET

TransactionScope:避免分布式事务

我有一个父对象(DAL 的一部分),其中包含子对象的集合(List). 当我将对象保存回数据库时,我输入/更新父对象,然后循环遍历每个子对象.为了可维护性,我已经把孩子的所有代码放到一个单独的私有方法中. 我打算使用标准的 ADO 事务,但在我的旅行中,我偶然发现了 TransactionScope 对象,我相信这将使我能够将所有数据库交互包装在父方法中(以及子方法中的所有交互)一笔交 ..
发布时间:2022-01-06 20:15:33 C#/.NET