c# - 在 WCF 服务中的异步方法调用期间检测连接失败

标签 c# .net wcf asynchronous long-polling

我有一个异步 WCF 服务实现,我想检测客户端何时在 WCF 方法调用期间中止连接。

基本上,这就是我想要的:

  1. 客户端调用 WCF 方法
  2. 服务器开始异步处理请求
  3. 客户端中止连接(或由于任何原因连接失败)
  4. 应通知服务器客户端中止连接

这可能吗?

这是一个长轮询实现。或者,服务器能否确保客户端成功收到响应?如果没有,则应为下一个轮询请求保存响应。

最佳答案

我不知道有什么可靠的方法可以知道客户端是否已连接。参见 this , thisthis

建议的一些替代方法是使用双工 channel 或使用队列。基于队列的解决方案会让服务器将响应发布到队列,客户端从队列中选择这些响应。队列可以在MSMQ、DB、Azure中实现。

谢谢

关于c# - 在 WCF 服务中的异步方法调用期间检测连接失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5551061/

相关文章:

c# - 在 WebResourceRequested 事件中为 WebView2 设置 cookie

c# - 为什么 Java 类不能既是抽象类又是最终类

c# - 我的网站是否已关闭、无法正常工作或出现错误?

c# - .net中度数转弧度的扩展方法

c# - 当 "break all"没有响应时,如何调试无响应的 .Net 服务?

c# - 领域驱动设计适合我的项目吗?

c# - 防止对话框在按钮的单击事件处理程序中关闭

c# - 使用带有滚动的NEST 2.x的ElasticSearch查询不会返回结果

c# - WIF 身份验证方案。 STS实现问题

java - 如何在 Java 中使用/反序列化 .Net WCF 服务 JSON 响应