0

我正在使用带有 netMsmqBinding 和 WAS 的 WCF 服务。一切似乎都运行良好(包括通过stackoverflow社区远程发布到队列:))。

现在剩下的问题是服务处理了几条消息,然后在事件日志中停止并显示一条消息,例如“服务'~/registrator'不存在。”。看来我有一个同名的队列与我的服务无关。如果我删除该队列,另一个队列会出现另一条相同类型的消息,等等......所以似乎 msmqListener 服务尝试从所有队列中读取并为每个队列匹配一个服务端点?

那么问题将是:如何告诉 netMsmqListener 服务仅侦听某些队列,或者至少在某些队列无法找到端点时不失败?

4

1 回答 1

1

据我所知,net.msmq 侦听器适配器服务不可直接配置。Microsoft Connect中有一份报告似乎与您遇到的问题类似。Microsoft 支持无法复制该问题,但尚未关闭该报告。在这种情况下,问题可能是 SERVICE1 的 MSMQ 队列名称。该要求似乎使用此命名约定:ServiceName/service.svc 用于队列名称。

一些变通方法:首先尝试检查“~/registrator”队列的权限,并删除运行 net.msmq 侦听器适配器服务的帐户(如果已列出)。否则(更彻底),将使用“~/registrator”队列的应用程序移动到另一台服务器,然后将 WCF 服务队列留在当前机器上。

于 2011-09-15T13:29:32.483 回答