【发布时间】:2010-01-23 12:11:08
【问题描述】:
我想同时运行两个事务。因此,我在 MSDN 文章中指定的连接字符串中给出了 MultipleActiveResultSet = false 。但是在修改连接字符串后,我得到“目标机主动拒绝”。我正在使用 WCF。
有什么想法吗?
谢谢。
【问题讨论】:
标签: sql-server sql-server-2005
我想同时运行两个事务。因此,我在 MSDN 文章中指定的连接字符串中给出了 MultipleActiveResultSet = false 。但是在修改连接字符串后,我得到“目标机主动拒绝”。我正在使用 WCF。
有什么想法吗?
谢谢。
【问题讨论】:
标签: sql-server sql-server-2005
我的印象是 MARS 仅适用于在单个连接上获取多个只进只读结果集的特殊情况,但常规操作必须有自己的连接。
【讨论】:
你能解释一下你想做什么吗?
事务是原子的和隔离的(每个连接都非常有效)。您不能为一个连接/会话同时执行 2 个事务:这没有任何意义
【讨论】:
你确定“目标机主动拒绝”与并行交易有关吗?
这通常意味着机器没有在你试图与之通信的端口上监听。
【讨论】:
我犯了这个错误:
SqlConnection Con=new SqlConnection(_myConString);
SqlTransaction tr=Con.CreateTransaction();
tr=Con.CreateTransaction();
第 2 行和第 3 行正在创建事务。因此我收到了错误。我纠正了,问题解决了。
结论:在完成正在运行的事务之前调用 CreateTransaction 会导致上述异常。
【讨论】: