7得票2回答
事务范围(TransactionScope)总是试图升级为MSDTC。

我正在尝试在循环内使用事务范围。整个循环过程中只使用一个数据库连接。我正在使用Entity Framework 4进行数据库访问。在循环的第二次迭代期间,当执行LINQ to Entites查询时,会抛出一个异常,指出服务器上的MSDTC不可用。 我已经阅读了明确打开连接然后注册事务应该解决...

102得票10回答
事务管理器已禁用其对远程/网络事务的支持。

我正在使用SQL Server和ASP.NET。我有以下函数:Using js = daoFactory.CreateJoinScope() Using tran = New Transactions.TransactionScope() '... tr...

10得票2回答
SqlConnection和避免升级到MSDTC

当我们需要在应用程序中进行数据库访问时,我们使用以下模式: 对于查询,我们有一个静态工厂类,其中包含一个名为CreateOpenConnection的方法,仅执行new SqlConnection(myConnectionString)和调用Open()。在进行查询之前调用此方法,并在查询...

10得票1回答
为什么在处理后需要进行交易处理?

我正在尝试使用一些环境事务范围(感谢Entity Framework),这是我以前没有做过的,我看到了一些奇怪的行为,我正在努力理解。 我正在尝试加入当前事务范围并在其成功完成后进行一些操作。我的加入参与者由于持有某些资源而实现IDisposable。我有一个简单的示例展示了奇怪的行为。 对于...

10得票2回答
检查现有的TransactionScope是否已激活

我正在使用:public class TransactionUtils { public static TransactionScope CreateTransactionScope() { var TransactionOptions = new Transa...

13得票6回答
事务范围未回滚事务

这是我事务范围源代码的当前架构。第三次插入引发了.NET异常(不是SQL异常),并且没有回滚前面的两个插入语句。我做错了什么? 编辑:我从insert2和insert3中移除了try/catch。我还从insert1的try/catch中移除了异常处理实用程序,并替换成了“throw ex”...

7得票4回答
NHibernate 3.0:TransactionScope和自动刷新

在NHibernate 3.0中,当仅在环境事务下运行(即未启动NHibernate事务)时,FlushMode.Auto无法工作。是否应该这样? using (TransactionScope scope = new TransactionScope()) { ISession ...

11得票1回答
使用Linq To SQL进行多次SubmitChanges和事务回滚

我正在使用TransactionScope在Linq to SQL中提交数据。我的问题是,如果我在同一个scope中使用多个SubmitChanges,在出现错误的情况下,是所有的scope都会回滚,还是只有最后一个SubmitChanges之后所做的更改会回滚?例如:using (Trans...

8得票3回答
两个嵌套的事务范围导致:事务已中止。

这段代码给我报错:事务已中止。 如果我移除一个嵌套的事务,就不会抛出异常。 using(var scope = new TransactionScope()) { repo.Insert(new Foo {Fname = "aaaa"}); usi...

14得票1回答
TransactionScope与IDbTransaction的区别

使用TransactionScope相比IDbTransaction的优缺点是什么?下面是一些建议,请补充/更正列表。 TransactionScope的优势: TransactionScope支持分布式事务 - 您可以在一个事务中访问多个数据源或使用多个连接到一个数据源。 Transa...