.NET webservice超时 - 放弃工作

时间:2012-10-11 10:15:42

标签: .net sql web-services sqltransaction

我有一个调用webservice方法的Winforms应用程序

webservice方法启动一个长时间运行的事务(不幸的是,有很多小命令,而不是一个长命令。)

据我所知,如果webservice调用超时,webservice方法中的事务将继续运行并完成。我希望发生的事情是当webservice超时时事务回滚。这可能吗?

1 个答案:

答案 0 :(得分:0)

恢复旧线程,但我遇到了同样的问题,所以我想我会为遇到它的其他人更新这个问题。我发现的最佳解决方案是使用XACT_ABORT即插入

SET XACT_ABORT ON

在您的交易开始时。这将强制回滚任何类型的客户端错误(因此您的事务将不会继续运行和完成,它将只是回滚)。在dba stackexchange中有一个非常好的讨论:

https://dba.stackexchange.com/questions/10912/sql-server-transaction-timeout