WCF MsmqBinding WAS:侦听器尝试将每个队列与服务匹配

WCF MsmqBinding WAS:侦听器尝试将每个队列与服务匹配,wcf,msmq,netmsmqbinding,Wcf,Msmq,Netmsmqbinding,我正在使用带有netMsmqBinding和WAS的WCF服务。一切似乎都很好(包括通过stackoverflow社区远程发布到队列:) 现在剩下的问题是,服务处理一些消息,然后在事件日志中显示一条消息“服务'~/registrator'不存在”停止。似乎我有一个与我的服务无关的同名队列。如果删除该队列,则会为另一个队列显示另一条相同类型的消息,等等。。。看来msmqListener服务试图从所有队列中读取数据,并为每个队列匹配一个服务端点 接下来的问题是:如何告诉netMsmqListener

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

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


接下来的问题是:如何告诉netMsmqListener服务仅侦听某些队列,或者在找不到其中一些队列的端点时至少不失败?

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

两种解决方法:首先尝试检查“~/registrator”队列的权限,然后删除运行net.msmq侦听器适配器服务的帐户(如果列出了该帐户)。否则(更彻底地说),将使用“~/registrator”队列的应用程序移动到另一台服务器,只需将WCF服务队列留在当前计算机上即可