0

尝试实现 MSMQ 支持的 WCF PubSub。我知道 net.msmq 是单向的;但是,当我使用单个服务对象来实现 net.msmq 端点以从底层队列中读取,并使用 net.tcp 端点供侦听器订阅回调时,我遇到了很多关于单向 vs 的抱怨.双向,DuplexChannelFactory,DuplexClientBase,等等等等。

似乎实现这一点的唯一方法是让 net.msmq 队列读取服务成为 net.tcp 发布者服务的客户端,并在从队列中读取新消息时通知发布者,而不是发布消息内部订阅者。或者,不要在接收器上使用 net.msmq,而只是准备好一个普通的旧 MessageQueue 对象。

4

1 回答 1

0

在重构了一些接口并在订阅者和回调实现者之间找到了一些缺失的属性和尴尬关系之后,我已经建立了预期的队列支持 pubsub 模式。所以是的,有可能,以前的困难是我的设计错误。

编辑/脚注:由于某种原因,以前作为 MsmqMessage 传递给 net.msmq 接收器的消息现在抛出 nullreferenceexceptions;但是将签名更改为 MyObject 有效,但最初并没有

于 2011-03-02T19:01:08.423 回答