title: Error using Azure Service Bus Subscription OnMessageAsync event
body: <p>We are using Azure Service Bus in our project and while reading messages from service bus topic/subscription.
  We are using <code>subscriptionClient.OnMessageAsync</code> event in conjunction with <code>onMessageOptions.ExceptionReceived</code>.
  Let me write down the steps we followed to reproduce the issue we are facing.</p>
  
  <ol>
  <li>Create a service bus namespace with default config in the azure portal</li>
  <li>Create a topic inside it with default config in the azure portal</li>
  <li>Create a subscription inside it with default config in the azure portal</li>
  <li>Create a console app and paste the code added below</li>
  <li>Connect the service bus using Service Bus Explorer</li>
  <li>Run the console app</li>
  <li>Send a few test messages from service bus explorer &amp; watch the console app window</li>
  <li>Though the messages are processed successfully every time the control is going inside the <code>ExceptionReceived</code> method</li>
  </ol>
  
  <p>Here's the code:</p>
  
  <pre><code>class Program
  {
      static void Main()
      {
          var subscriptionClient = SubscriptionClient.CreateFromConnectionString
          (
              "servicebusendpointaddress",
              "topicname",
              "subscriptionname",
              ReceiveMode.PeekLock
          );
  
          var onMessageOptions = new OnMessageOptions();
          onMessageOptions.ExceptionReceived += OnMessageError;
  
          subscriptionClient.OnMessageAsync(OnMessageReceived, onMessageOptions);
  
          Console.ReadKey();
      }
  
      private static void OnMessageError(object sender, ExceptionReceivedEventArgs e)
      {
          if (e != null &amp;&amp; e.Exception != null)
          {
              Console.WriteLine("Hey, there's an error!" + e.Exception.Message + "\r\n\r\n");
          }
      }
  
      private static async Task OnMessageReceived(BrokeredMessage arg)
      {
          await arg.CompleteAsync();
          Console.WriteLine("Message processing done!");
      }
  }
  </code></pre>
  
  <p><img src="https://i.stack.imgur.com/ksawJ.jpg" alt="Error"></p>
  
  <p>Are we missing something here? </p>
  
  <p>Also one point to mention is that is we enable ‘autocomplete’ and remove the <code>await arg.CompleteAsync();</code> then this is not happening.</p>
  
  <pre><code>var onMessageOptions = new OnMessageOptions() { AutoComplete = true};
  </code></pre>
  
  <p>In both the cases the messages are being processed successfully &amp; removed from the subscription immediately.</p>