Я новичок в С#, и я хотел бы отправлять веб-запрос асинхронно. Я использую HttpWebRequest с методом POST
. Проблема в том, что если я использую функцию GetRequestStream()
, мое приложение зависает, даже если я получаю ответ асинхронно. Читаю, функция GetRequestStream()
сразу пытается связаться с сервером. Я нашел функцию BeginGetResponse()
, но не понимаю, как ею пользоваться.
Может ли кто-нибудь объяснить мне, как это работает? Как писать данные поста асинхронно?
Я хотел бы написать такую функцию (независимо от того, сколько других частных функций мне нужно написать):
public delegate void ReceiveFunc(HttpWebResponse response);
public static void sendRequest(string url, HttpWebRequest request, string content, ReceiveFunc callback) {
// Return response back to callback
}
Спасибо.
HttpClient
и ключевые словаasync-await
. Вам станет легче. - person Yuval Itzchakov   schedule 17.02.2015GetRequestStream()
не является асинхронной операцией. - person JNYRanger   schedule 17.02.2015HttpClient
проще в использовании. Но если вы новичок в C#, я настоятельно рекомендую сначала прочитатьasync/await
. - person Krumelur   schedule 17.02.2015HttpClient
не существует. Что здесь происходит? - person eSeverus   schedule 17.02.2015