Получение ответа асинхронного запроса HttpWebRequest

Мне интересно, есть ли простой способ получить ответ асинхронного httpwebrequest.

Я уже видел этот вопросВот но все, что я пытаюсь сделать, это вернуть ответ (который обычно является json или xml) в виде строки другому методу, где я могу затем проанализировать / обработать его соответствующим образом.

Вот некоторый код:

У меня есть эти два статических метода, которые я считаю поточно-ориентированными, так как все параметры передаются, и нет общих локальных переменных, которые используют методы?

<code>public static void MakeAsyncRequest(string url, string contentType)
{
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
    request.ContentType = contentType;
    request.Method = WebRequestMethods.Http.Get;
    request.Timeout = 20000;
    request.Proxy = null;

    request.BeginGetResponse(new AsyncCallback(ReadCallback), request);
}

private static void ReadCallback(IAsyncResult asyncResult)
{
    HttpWebRequest request = (HttpWebRequest)asyncResult.AsyncState;
    try
    {
        using (HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(asyncResult))
        {
            Stream responseStream = response.GetResponseStream();
            using (StreamReader sr = new StreamReader(responseStream))
            {
                //Need to return this response 
                string strContent = sr.ReadToEnd();
            }
       }
       manualResetEvent.Set();
    }
    catch (Exception ex)
    {
        throw ex;
   }
}
</code>

Ответы на вопрос(4)

Ваш ответ на вопрос