I am trying to setup a dead-letter queue, but when I reject a message it's not passed to the dead-letter queue.&nbsp;<div><br></div><div>Code I use:</div><div><br></div><div><pre style="font-family: Consolas; color: black; background-position: initial initial; background-repeat: initial initial;"><span style="color:blue;">static</span>&nbsp;<span style="color:blue;">void</span>&nbsp;Main(<span style="color:blue;">string</span>[]&nbsp;args)
{
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:blue;">const</span>&nbsp;<span style="color:blue;">string</span>&nbsp;deadLetterExchangeName&nbsp;=&nbsp;<span style="color:#a31515;">"DeadLetterExchange"</span>;
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:blue;">const</span>&nbsp;<span style="color:blue;">string</span>&nbsp;deadLetterQueueName&nbsp;=&nbsp;<span style="color:#a31515;">"DeadLetterQueue"</span>;
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:blue;">const</span>&nbsp;<span style="color:blue;">string</span>&nbsp;deadLetterRoutingKey&nbsp;=&nbsp;<span style="color:#a31515;">"MessageQueue"</span>;
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:blue;">const</span>&nbsp;<span style="color:blue;">string</span>&nbsp;defaultExchangeName&nbsp;=&nbsp;<span style="color:#a31515;">"MessagesExchange"</span>;
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:blue;">const</span>&nbsp;<span style="color:blue;">string</span>&nbsp;defaultQueueName&nbsp;=&nbsp;<span style="color:#a31515;">"MessageQueue"</span>;
 
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#2b91af;">ConnectionFactory</span>&nbsp;connectionFactory&nbsp;=&nbsp;<span style="color:blue;">new</span>&nbsp;<span style="color:#2b91af;">ConnectionFactory</span>();
&nbsp;&nbsp;&nbsp;&nbsp;connectionFactory.HostName&nbsp;=&nbsp;<span style="color:#a31515;">"10.5.0.184"</span>;
 
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#2b91af;">IConnection</span>&nbsp;connection&nbsp;=&nbsp;connectionFactory.CreateConnection();
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#2b91af;">IModel</span>&nbsp;channel&nbsp;=&nbsp;connection.CreateModel();
 
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:green;">//Declare&nbsp;dead-letter&nbsp;exchange</span>
&nbsp;&nbsp;&nbsp;&nbsp;channel.ExchangeDeclare(deadLetterExchangeName,&nbsp;<span style="color:#2b91af;">ExchangeType</span>.Direct);
&nbsp;&nbsp;&nbsp;&nbsp;channel.QueueDeclare(deadLetterQueueName,&nbsp;<span style="color:blue;">true</span>,&nbsp;<span style="color:blue;">false</span>,&nbsp;<span style="color:blue;">false</span>,&nbsp;<span style="color:blue;">null</span>);
&nbsp;&nbsp;&nbsp;&nbsp;channel.QueueBind(deadLetterQueueName,&nbsp;deadLetterExchangeName,&nbsp;deadLetterRoutingKey,&nbsp;<span style="color:blue;">null</span>);
 
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:green;">//Declare&nbsp;default&nbsp;exchange</span>
&nbsp;&nbsp;&nbsp;&nbsp;channel.ExchangeDeclare(defaultExchangeName,&nbsp;<span style="color:#2b91af;">ExchangeType</span>.Direct);
&nbsp;&nbsp;&nbsp;&nbsp;channel.QueueDeclare(defaultQueueName,&nbsp;<span style="color:blue;">true</span>,&nbsp;<span style="color:blue;">false</span>,&nbsp;<span style="color:blue;">false</span>,&nbsp;<span style="color:blue;">null</span>);
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#2b91af;">Hashtable</span>&nbsp;arguments&nbsp;=&nbsp;<span style="color:blue;">new</span>&nbsp;<span style="color:#2b91af;">Hashtable</span>()
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<span style="color:#a31515;">"x-dead-letter-exchange"</span>,&nbsp;<span style="color:#a31515;">"DeadLetterExchange"</span>},
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<span style="color:#a31515;">"x-dead-letter-routing-key"</span>,&nbsp;deadLetterRoutingKey}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};
&nbsp;&nbsp;&nbsp;&nbsp;channel.QueueBind(defaultQueueName,&nbsp;defaultExchangeName,&nbsp;defaultQueueName,&nbsp;arguments);
 
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:green;">//Queue&nbsp;message</span>
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:blue;">byte</span>[]&nbsp;messageBody;
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#2b91af;">MyMessage</span>&nbsp;message&nbsp;=&nbsp;<span style="color:blue;">new</span>&nbsp;<span style="color:#2b91af;">MyMessage</span>(<span style="color:#a31515;">"ID-1"</span>);
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#2b91af;">DataContractJsonSerializer</span>&nbsp;serializer&nbsp;=&nbsp;<span style="color:blue;">new</span>&nbsp;<span style="color:#2b91af;">DataContractJsonSerializer</span>(<span style="color:blue;">typeof</span>(<span style="color:#2b91af;">MyMessage</span>));
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:blue;">using</span>&nbsp;(<span style="color:#2b91af;">MemoryStream</span>&nbsp;memoryStream&nbsp;=&nbsp;<span style="color:blue;">new</span>&nbsp;<span style="color:#2b91af;">MemoryStream</span>())
&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;serializer.WriteObject(memoryStream,&nbsp;message);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;messageBody&nbsp;=&nbsp;memoryStream.ToArray();
&nbsp;&nbsp;&nbsp;&nbsp;}
 
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#2b91af;">IBasicProperties</span>&nbsp;basicProperties&nbsp;=&nbsp;channel.CreateBasicProperties();
&nbsp;&nbsp;&nbsp;&nbsp;basicProperties.ContentType&nbsp;=&nbsp;<span style="color:#a31515;">"application/json"</span>;
&nbsp;&nbsp;&nbsp;&nbsp;basicProperties.DeliveryMode&nbsp;=&nbsp;2;
 
&nbsp;&nbsp;&nbsp;&nbsp;channel.BasicPublish(defaultExchangeName,&nbsp;defaultQueueName,&nbsp;basicProperties,&nbsp;messageBody);
 
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:green;">//DeQueue</span>
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#2b91af;">BasicGetResult</span>&nbsp;result&nbsp;=&nbsp;channel.BasicGet(defaultQueueName,&nbsp;<span style="color:blue;">false</span>);
 
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:green;">//Negative&nbsp;Acknowledge</span>
&nbsp;&nbsp;&nbsp;&nbsp;channel.BasicNack(result.DeliveryTag,&nbsp;<span style="color:blue;">false</span>,&nbsp;<span style="color:blue;">false</span>);
}
}
 
[<span style="color:#2b91af;">DataContract</span>]
<span style="color:blue;">public</span>&nbsp;<span style="color:blue;">class</span>&nbsp;<span style="color:#2b91af;">MyMessage</span>
{
<span style="color:blue;">public</span>&nbsp;MyMessage(<span style="color:blue;">string</span>&nbsp;messageId)
{
&nbsp;&nbsp;&nbsp;&nbsp;MessageId&nbsp;=&nbsp;messageId;
}
 
[<span style="color:#2b91af;">DataMember</span>]
<span style="color:blue;">public</span>&nbsp;<span style="color:blue;">string</span>&nbsp;MessageId&nbsp;{&nbsp;<span style="color:blue;">get</span>;&nbsp;<span style="color:blue;">set</span>;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
}</pre><pre style="font-family: Consolas; color: black; background-position: initial initial; background-repeat: initial initial;"><br></pre><pre style="font-family: Consolas; color: black; background-position: initial initial; background-repeat: initial initial;"><br></pre><pre><font color="#000000" face="Consolas">Any ideas?<br></font></pre></div>