问题描述
|
我设置了WCF服务以通过HTTP和MSMQ工作。这样的作品。 HTTP协议100%有效。问题出在
net.msmq
。当我检查队列时,消息已减少1,我认为这意味着它正在处理中。但是同时,该服务不再可用。我收到来自IIS的403服务不可用错误。当我清除队列并重置站点时,该服务再次可用。
消息队列对每个人都具有完全权限,并且该服务不执行任何操作(严重的是,它只是一个存根方法),因此这不是代码问题。
合同被标记为一种方式,动作为“ 1”。
消息进入队列(一次发送10条消息),并且至少拉出1条消息(计数降至9)。
net.msmq
侦听器服务正在运行。
我该如何解决这个问题?
解决方法
我遇到了同样的问题,因为我忘记了指定bindingConfiguration。我有像这样的绑定设置
<bindings>
<netMsmqBinding>
<binding name=\"Msmq\" exactlyOnce=\"true\" >
<security mode=\"None\" />
</binding>
</netMsmqBinding>
</bindings>
一旦意识到端点中缺少bindingConfiguration,便将其添加进来,它开始正常工作。
<endpoint address =\"net.msmq://localhost/private/MyQueue.svc\"
binding=\"netMsmqBinding\"
contract=\"IService\" bindingConfiguration=\"Msmq\">