【问题标题】:Handling lost connection with client inside a .NET webservice - possible?在 .NET Web 服务中处理与客户端的丢失连接 - 可能吗?
【发布时间】:2011-09-10 18:00:03
【问题描述】:

我编写了一个 web 服务,它调用数据库中的一个过程并将这个过程的结果作为一个数据集返回。如果在返回数据时与客户端的连接丢失,有什么方法可以知道(在这个 web 服务中)?我想处理这种情况,回滚我对数据库所做的任何更改。任何帮助表示赞赏。

【问题讨论】:

  • 在客户端中,将 webservice 调用的代码包含在 try-catch 块内,并在 catch 块内对异常执行所需的任何操作。
  • 是的,但我想在我的网络服务中处理这种异常,而不是在客户端中。

标签: .net web-services error-handling


【解决方案1】:

据我了解,您希望确保您的客户从您的服务中取回数据,因为只有在这种情况下,您才希望对数据库进行一些更改。只有当客户端启动分布式事务,您的服务加入事务,然后当客户端收到数据时,他才会提交事务。

这在 WCF (transaction flow) 中受支持。 ASMX Web 服务不支持这种交互 - 在这种情况下 you must manually control MSDTC transaction

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多