https経由で非同期get-requestを実装したい。これは、UIとリクエストスレッドを分離するために必要です。このコードは検索で機能しますが、本当に非同期かどうかはわかりません。このコードのパフォーマンス批評家を提供してください。
public void authHttp()
{
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create("uri");
request.BeginGetResponse(new AsyncCallback(ReadWebRequestCallback), request);
}
private void ReadWebRequestCallback(IAsyncResult callbackResult)
{
HttpWebRequest myRequest = (HttpWebRequest)callbackResult.AsyncState;
HttpWebResponse myResponse = (HttpWebResponse)myRequest.EndGetResponse(callbackResult);
using (StreamReader httpwebStreamReader = new StreamReader(myResponse.GetResponseStream()))
{
string results = httpwebStreamReader.ReadToEnd();
//TextBlockResults.Text = results; //-- on another thread!
//Dispatcher.BeginInvoke(() => TextBlockResults.Text = results);
}
myResponse.Close();
}