そこで、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 に気付きましたか? それはうまくいきませんか?それともどこかで間違えたのでしょうか?
ありがとう。