Vol4まではファイル(主に画像)の操作を紹介してきましたが、今回から数回Webリクエストを投げてサーバーからデータを取ってくる方法について紹介していきたい。
// 外部通信先URL
String uri_str = "http://hoge.com";
System.Uri uri = new Uri(uri_str);
HttpWebRequest Request = (HttpWebRequest)WebRequest.Create(uri);
Request.Method = "POST";
// ここでもawait大活躍、非同期処理をあたかも同期処理のように記述できる
HttpWebResponse Response = (HttpWebResponse)await Request.GetResponseAsync();
StreamReader ResponseDataStream = new StreamReader(Response.GetResponseStream());
var result = ResponseDataStream.ReadToEnd();
// 取得したデータがXMLでくる想定
// 取得したデータをLINQでごにょごにょする
var doc = System.Xml.Linq.XElement.Parse(result);
上記はhoge.comにアクセスしてXMLデータを取ってくるコードです。
var resultに通信結果が入ります。
これまで別メソッドやラムダ式で書いていた通信結果取得部分がawaitのおかげですっきり記述できています。
Please give us your valuable comment