所以我在我的 WCF 服务上设置了 MSMQ。我正在使用 msmqIntegrationBinding 将电子邮件直接转储到本地队列中,然后我的服务会抓取它们并处理它们,一切正常,但我正在尝试添加一个自定义死信队列,尽管它似乎可以工作,即它没有我的服务处于故障状态,我定义的自定义队列永远不会包含任何内容。我认为问题在于我正在尝试使用直接队列而不是 net.msmq 值作为我的 customDeadLetterQueue 值。
让我通过一些例子来更清楚地说明。我见过的所有样本看起来都是这样的。
<binding name = "CustomDLQ"
deadLetterQueue = "Custom"
customDeadLetterQueue = "net.msmq://localhost/private/MyCustomDLQ">
</binding>
我的配置看起来像这样。
<msmqIntegrationBinding>
<binding name="EmailProcessorBinding"
deadLetterQueue="Custom"
customDeadLetterQueue="msmq.formatname:DIRECT=OS:.\private$\failedmessages"
durable="true"
receiveRetryCount="2"
receiveErrorHandling="Move"
maxRetryCycles="3" >
<security mode="None" />
</binding>
</msmqIntegrationBinding>
注意到 customDeadLetterQueue 了吗?那是行不通的吗?还是我在其他地方犯了错误?
谢谢。