0
votes

I need to use the response Data of my httpwebrequest in another class, but as it is async call it is already empty, how can I get it or be notified that the call is completed?

1
What is already empty? Could you add some code to your question to help clarify what you're trying to accomplish? - WiredPrairie

1 Answers

0
votes
  public void GetData(string address)
    {
        HttpWebRequest request = WebRequest.Create(address) as HttpWebRequest;
        request.BeginGetResponse(new AsyncCallback(GetResponseStreamCallback), request);

   }
    /// <summary>
    /// 
    /// </summary>
    /// <param name="ar"></param>
    private void GetResponseStreamCallback(IAsyncResult ar)
    {
        HttpWebRequest request = (HttpWebRequest)ar.AsyncState;
        try
        {
            HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(ar);
            using (StreamReader httpWebStreamReader = new StreamReader(response.GetResponseStream()))
            {
                var webServiceResponse = httpWebStreamReader.ReadToEnd();

                httpWebStreamReader.Close();
            }
            response.Close();

        }
        catch (WebException)
        {
        }
    }