0

我有一个带有公共 REST 和 SOAP 端点的 WCF 服务,它有一个发布方法。目前应用流程如下

  1. 对象发布到服务方法
  2. 服务方法将数据传递到存储队列,然后发送 XML 响应。
  3. 第二个工作角色检查队列,进行一些处理并根据处理,将记录添加到数据库或拒绝它。

我目前的问题是 WCF 方法在决定接受或拒绝消息之前做出响应。处理很多,根据客户设置,在收到WCF消息后使用各种worker角色。我希望能够做出接受/拒绝决定,然后用相关数据做出回应。我想知道如何做到这一点。

我可以做一个异步服务方法,但是所有代码都需要进入 WCF 角色或可调用库,这并不理想。有没有办法在另一个工作角色(消息在队列中)做出响应之前不使用异步 End 方法?我意识到我可以做一个 thread.sleep 并定期检查队列,但是我必须将原始请求数据添加到队列中,我真的不认为这是做事的正确方法。我用谷歌搜索了这个,找不到一个具体的、非骇客的方法。

让我知道代码示例是否会有所帮助,但是(我认为)它非常简单。

4

0 回答 0