We have a setting that used to work and has stopped working over the past few months. We use the usual dead letter queue, which is specified in the config, but basically set as follows:
MsmqIntegrationBinding msmq = new MsmqIntegrationBinding( // Defaults to WindowsDomain. We want all messages to be authenticated. MsmqIntegrationSecurityMode.Transport); msmq.DeadLetterQueue = DeadLetterQueue.Custom; msmq.CustomDeadLetterQueue = new Uri("net.msmq://localhost/private/BulkUpdatesDeadLetter");
We started getting this error, which seems pretty clear:
System.InvalidOperationException: A mismatch occurred between the binding and the MSMQ configuration. Messages cannot be sent. The user dead letter queue specified in the binding must be a transactional queue. Verify that the user address of the dead letter queue is correct and the queue is a transactional queue.
We checked that we are pointing to the correct queue in the config and that the queue is transactional. Are there any other problems that could throw this exception, or did we just miss something in the obvious?
Refresh . If our web development team deleted and recreated the queues and still got the error.
c # wcf msmq netmsmqbinding
zimdanen
source share