title: How to use the MessageReceiver.Receive method by sequenceNumber on ServiceBus
body: <p>I'm trying to resubmit a message from a deadletter queue.</p>
  
  <p>I am can replay a message on a dead letter queue, thats fine.
  The problem is when I want to now delete this from the deadletter queue.</p>
  
  <p>Here is what I am trying to do:</p>
  
  <pre><code>var subscription = "mySubscription";
  var topic = "myTopic";
  
  var connectionString = "connectionStringOnAzure";
  var messagingFactory = MessagingFactory.CreateFromConnectionString(connectionString);
  
  var messageReceiver = messagingFactory.CreateMessageReceiver(SubscriptionClient.FormatDeadLetterPath(topic, subscription), ReceiveMode.ReceiveAndDelete);
  
  
  long messageSequenceNumber = 835;
  var brokeredMessage = messageReceiver.Receive(messageSequenceNumber);  // this part fails
  
  // mark message as complete to remove from the queue
  brokeredMessage.Complete();
  </code></pre>
  
  <p>I get following error message:</p>
  
  <pre><code> Microsoft.ServiceBus.Messaging.MessageNotFoundException : Failed to lock one or more specified messages. The message does not exist..TrackingId:ae15edcc-06ac-4d2b-9059-009599cf5c4e_G5_B15,TimeStamp:8/13/2013 1:45:42 PM
  </code></pre>
  
  <p>However, instead of specifying a message sequence number and I just use the ReceiveBatch as shown below, it is fine.</p>
  
  <pre><code>// this works and does not throw any errors
  var brokeredMessages = messageReceiver.ReceiveBatch(10);
  </code></pre>
  
  <p>Am I missing something? Or is there another way of reprocessing deadletters and removing them?</p>