title: Webclient UploadStringCompleted event not being called
body: <p>I'm writing unit tests for some of the web services we've developed. I have a [TestMethod] that posts to a webservice as rest. Works great however it doesn't trigger the eventhandler method that I created. Through debugging, I've noticed that the eventhandler is getting excluder after the testmethod is executed. It goes to testcleanup. </p>
  
  <p>Has anyone encountered this problem? Here's the code</p>
  
  <pre><code> [TestMethod,TestCategory("WebServices")]
          public void ValidateWebServiceGetUserAuthToken()
          {
              string _jsonstringparams =
                  "{ \"Password\": \"xxx\", \"UserId\": \"xxxx\"}";
              using (var _requestclient = new WebClient())
              {
                  _requestclient.UploadStringCompleted += _requestclient_UploadStringCompleted;
                  var _uri = String.Format("{0}?format=Json", _webservicesurl);
                  _requestclient.Headers.Add(HttpRequestHeader.ContentType, "application/json");
                  _requestclient.UploadStringAsync(new Uri(_uri), "POST", _jsonstringparams);
              }
      }
  
      void _requestclient_UploadStringCompleted(object sender, UploadStringCompletedEventArgs e)
      {
          if (e.Result != null)
          { 
              var _responsecontent = e.Result.ToString();
              Console.WriteLine(_responsecontent);
          }
          else 
          {
              Assert.IsNotNull(e.Error.Message, "Test Case Failed");
          }
      }
  </code></pre>