transactions相关内容
我已经创建一个TransactionScope和范围内的各种项被创建和更新在数据库中。在这个过程中我做了很多调用数据库。本来我在的TransactionScope年初开了一个SqlConnection并围绕它传递给了一个数据库调用,然后我关闭了连接所有的呼叫都作出后和之前的事务提交的任何功能。它是更好地做到这一点,或打开和关闭每个呼叫的连接(使用相同的连接字符串)? 解决方案 如果你打算做了很
..
我如何使用的类 System.Transactions的命名空间来达到类似的效果,我可以使用的 SqlTransaction.Save(保存点)和的 SqlTransaction.Rollback(保存点)。使用这两种方法的效果是能够创建命名保存点在运行的事务和问题的情况下回滚只保存点(之前创建的保存点操作都不会回退)。 解决方案 保存点是在具体的实施过程中的数据库。甲骨文实现了他们,显然也是
..
我在找这个错误的根源的描述:“由另一个会话使用事务上下文”。 我把它有时在我的单元测试,所以我不能提供摄制code之一。但我不知道什么是“设计”错误的原因。 更新:从SQL Server 2008中,我得到的错误似乎是单线程的地方错误再次为SQLEXCEPTION。但可能我有单元测试的互动,因为我在那里得到一次(MSTest的在VS2008SP1)运行几个测试误差。 但失败的测试是这样的:
..
我们可以使用SQL就像这样: SELECT * FROM学生(NOLOCK); 我怎样才能做到这一点的LINQ无需使用到SQL中的的TransactionScope ? 解决方案 的LINQ to SQL不具备这样做的任何机制,但您可以创建一个交易与特定的隔离级别。看看下面的code: 使用(VAR CON =新的SqlConnection(“构造”)) { con.Open(); 使用(V
..
我正在写从外部WebSphere MQ队列接收消息,并将它们放在一个内部MSMQ队列的客户端。客户端将使用MQ客户端或preferably,是纯粹的管理(MQC.TRANSPORT_MQSERIES_MANAGED)。 根据的解决方案 在WMQ单阶段提交被越来越消息时将消息或MQC.MQGMO_SYNCPOINT标志在使用MQC.MQPMO_SYNCPOINT标志启用。要完成的工作单位,调用队
..
我知道的多部分写道,我应该用交易NHibernate的。但是怎么样简单的读取和写入(1份)......我读过,这是很好的做法,始终使用事务。这是必需的? 我应该做到以下几点进行简单的读?或者我可以只下降了transcaction一部分的所有togather? 公开的PrinterJob RetrievePrinterJobById(GUID ID) { 使用(ISession的会话=
..
据我所知,Windows 7的支持事务处理的文件。我如何使用它们在C#? 解决方案 通过写互操作包装周围的非托管函数。我也博客一旦它的。这里的
..
我已经写了一些测试.NET code调用打到我的SQL Server。看来,使用 System.Transactions的是回滚任何修改导致该数据库的最佳选择。我知道,有些纯粹主义者会认为,我可能要嘲笑的数据库,但我不打算在这条道路;这不是严格的纯单元测试。 在我编写和运行几个测试,这完全按预期工作。我只是把code初始化和中止.NET交易的测试设置和测试方法拆卸。这似乎是一个很好的解决方案。
..
在使用ado.net,并创建一个单一的事务中的多个连接到MS SQL Server数据库(使用System.Transactions.TransactionScope),并System.Transactions的提升从轻量级事务管理器的事务的分布式事务协调器(内核在Vista上的事务协调人),即使在连接字符串是相同的所有连接的对象? 该文档是在这个特定的情况有些模糊。它说,如果其它连接打开到服务
..
在什么情况下可以code包裹在一个 System.Transactions.TransactionScope 还是犯,即使一个异常被抛出和最外层范围从来没有犯叫什么名字? 有包裹在使用(VAR TX =新的TransactionScope())顶级的方法,并调用也使用方法的TransactionScope 以相同的方式 我使用的是类型化数据集相关的TableAdapter的。难道说在适配器的命
..
如果我用命令事务隔离级别设置读取未提交,然后使用执行存储过程的 EXEC storedProcedureName 在同样的情况下,将在存储过程中使用的事务级表示previously或将使用默认的? 如果我想迫使每一个存储过程在事务级用我必须包括C型相同的语句$ C $的顶部(事务隔离级别设置读取未提交)? PS:该系统是建立在.NET 2.0和第三方产品的限制,这些替代方法因此需要之上。 解
..
我有一个使用一个新的.NET 4.0的控制台应用程序: MySQL的6.4.4.0 在实体框架4.2(code一) 在Visual Studio 2010中 到目前为止,这工作。我可以添加并从数据库中读取罚款。 现在,当我添加的TransactionScope,如下面的例子: 公共静态无效TestInsert() { 使用(TransactionScope的范围=新的Transac
..
我有可能做成千上万的插入到SQL Server 2005数据库的应用程序。如果插入任何原因失败(外键约束,字段长度等),应用程序设计来记录插入错误并继续。 每个插入物都独立于其他的,因此不需要对数据库完整性的交易。然而,我们确实希望使用它们的性能增益。当我使用的交易,我们会得到下面的错误在约1,每100提交的。 本的SqlTransaction已完成;它不再可用。 在System.Data.S
..
我使用实体框架4.0。现在我需要限制访问的表,而我从读,或写它。也许这是有关事务隔离级别。 我该怎么办呢? 更新 下面是我 使用(VAR DB =新MYDB()) { 使用(TransactionScope的范围=新的TransactionScope()) { VAR项目= db.MyItems.Single(X => x.Id == 5);
..
在实体框架默认的事务隔离级别是什么,当我发出“调用SaveChanges()”?我找不到它的任何地方。应被“序列化”? 解决方案 的SaveChanges 使用实施 DbTransaction 当前存储供应商。这意味着,默认事务隔离级别被设为默认值的数据库服务器。在SQL Server是提交读。如果你想改变隔离级别,您可以使用的TransactionScope 。您也可以覆盖的SaveChan
..
请参阅下面的code。如果我初始化一个以上的实体范围内,然后我得到的第二套code仅以下异常。如果我注释掉它的工作原理第二套。 {“基础提供程序未能打开。”} 内:{“与基础事务管理器通信失败”} 内:{“错误HRESULT E_FAIL已返回通过调用COM组件”} 请注意,这是一个示例应用程序,我知道这是没有意义的创造2上下文连胜。但是,生产code确实有理由在同一个的Transac
..
我有一张code,涉及多个插入,但需要执行的SubmitChanges方法之前,我完成插入其他表中,这样我可以AQUIRE的ID。我一直在寻找通过互联网和无法找到如何在LINQ创建一个事务SQL。我已经在我想要的交易发生在code将意见。 创建VAR = FALSE; 尝试 { VAR newCharacter =新字(); newCharacte
..
我现在写,这将需要多个插入,更新和删除我的业务实体的应用程序。我使用TransactionScope类,以保证所有的存储过程可以提交或回滚作为一个独立的工作单元。 我的问题是,我必须也使用COMMIT TRAN和ROLLBACK TRAN是我的每一个存储过程,如果我使用TransactionScope类在我的.NET类库? 解决方案 2005年它不是必需的,2000年我会,同时,我通常把Tr
..
在TransactionScope的第一个走了出来,我跑进得到它我开发计算机(XP)和我们的数据库服务器(Windows Server 2003)的工作,一些严重的问题。 当我看着它多,这似乎是一个棘手和wides $ P $垫的问题是有成为生产中头疼的一个机会,所以我决定不处理事务这种方式(即使我喜欢的语法了很多,我真的很想它的工作)。 难道这些问题仍然在那里,或者这是安全使用?你用这个规律
..
我想知道你将如何使用TransactionScope类以正确的方式,当你在处理多线程? 我们在我们的主线程创建一个新的范围,那么我们产卵的一对夫妇的工作线程,我们希望这些参与主体范围,使例如回滚要求每个工人如果范围是永远不会完成 我看了内部使用的ThreadStaticAttribute这使上述不可能/非常困难的一些有关的TransactionScope - 可能有人验证无论哪种方式?如果我们
..