У меня есть метод, который выполняет Http POST, и, поскольку я использую HttpWebRequest для его выполнения, метод основан на асинхронных вызовах. Так как мне нужен мой метод для возврата кода ответа моего POST Http, я хочу сделать мой метод асинхронным. Как мне это сделать?
Я думал об использовании Dispatcher.
РЕДАКТИРОВАТЬ: Таким образом, базовая структура моего кода выглядит следующим образом:
string response;
string httpPost(){
HttpWebRequest.BeginGetRequestStream(new AsyncCallback(requestCallback), httpWebRequest);
return response;
}
void requestCallback(IAsyncResult asyncResult){
HttpWebRequest.EndGetRequestStream(asyncResult);
HttpWebRequest.BeginGetResponse(new AsyncCallback(responseCallback), httpWebRequest);
}
void responseCallback(IAsyncResult asyncResult){
HttpWebResponse webResponse = (HttpWebResponse) HttpWebRequest.EndGetResponse(asyncResult);
response = webResponse.StatusCode.ToString();
}
Я хочу изменить httpPost () на асинхронный метод.
РЕДАКТИРОВАТЬ2:
public static void httpPost(Action<string> completed)
{
HttpWebRequest.BeginGetRequestStream(new AsyncCallback(requestCallback), httpWebRequest);
completed(HttpEngine.response);
}