繁体   English   中英

WCF服务-异步操作或排队消息

[英]WCF Service - Asynch Operation or Queued Messaging

我有一个WCF服务托管为Windows Service,其大多数方法当前定义为:

[OperationContract(IsOneWay = true)] 

但是,现在我需要将这些服务方法的响应发送回调用Web应用程序。

现在,由于服务方法有点繁琐(FYI,它们是报告方法,需要对大量记录进行邮件合并),因此我正在考虑将它们排队或异步处理,因此实质上是将请求发送到服务,它将请求保存到数据库/队列中,将Request-Id返回给调用Web应用程序。

  • 同时,WCF服务只能处理来自队列或数据库的未完成的请求。
  • 然后,调用Web应用程序可以ping WCF服务以获取请求状态,因为它具有Request-Id或
  • 当与Request-Id对应的过程完成时,WCF服务可以回溯到调用应用程序。

为了实现上述目标,任何人都可以指导我对WCF服务(目前具有单向操作)进行哪些更改吗?

另外,请指导我是否需要进行Asynch操作或消息队列?

谢谢!

当然,进行Async很简单:删除有问题的OperationContract上的OneWay,然后使用Async方法重新生成Service。 Silverlight强迫您使用异步操作是有原因的。 它们确实迫使您重新考虑UI。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM