title: Web Client - Asynchronous operations are not allowed in this context
body: <p>It is a Class Library and it is getting called form a web page</p>
  
  <pre><code>try
    {
      System.Net.WebClient wc = WebAccess.GetWebClient();
      wc.UploadStringCompleted += new System.Net.UploadStringCompletedEventHandler(wc_UploadStringCompleted);
      wc.UploadStringAsync(new Uri("http://" + MobileWLCUrl + urlCreateCacheAPI), GetJSONforGetMenuDetails(Id, MenuIds));                    
    }
  catch (Exception ex) { EngineException.HandleException(ex); }
  
  void wc_UploadStringCompleted(object sender, System.Net.UploadStringCompletedEventArgs e)
      {
          string result = e.Result;
          EngineException.CreateLog("Cache Created (for Menus: " + MenuIds + ") in API for LocationId: " + LocId);
      }
  </code></pre>
  
  <p>hie guys, m trying to hit this url asynchronously and it is giving me this error, any help will be appriciated. </p>
  
  <pre><code>Asynchronous operations are not allowed in this context. 
  Page starting an asynchronous operation has to have the Async attribute set to true 
  and an asynchronous operation can only be started on a page prior to PreRenderComplete event. 
  
  at System.Web.AspNetSynchronizationContext.OperationStarted()
  at System.Net.WebClient.UploadStringAsync(Uri address, String method, String data, Object userToken)
  at System.Net.WebClient.UploadStringAsync(Uri address, String data)
  </code></pre>
  
  <p>Thnx...</p>