GET を実行するために使用するものを次に示します。
public T Get<T>(string url, IEnumerable<KeyValuePair<string, string>> data)
{
var webApiUri = ConfigurationManager.AppSettings["WebApiUri"];
var client = new HttpClient();
try
{
string queryString = string.Empty;
if (data != null)
{
queryString = data.Distinct().Select(x => string.Format("{0}={1}", x.Key, x.Value)).ToDelimitedString("&");
}
var response = client.GetAsync(string.Format("{0}/{1}?{2}", webApiUri, url, queryString)).Result;
var responseContent = response.Content.ReadAsStringAsync().Result;
return JsonConvert.DeserializeObject<T>(responseContent);
}
catch (Exception ex)
{
Debug.Assert(false, ex.Message);
throw;
}
}
T
メソッドの戻り値の型です。レスポンスは JSON として期待されますが、その部分は気にする必要はありません。client
関心のある GET リクエストを実行する方法です。これは、JSON の結果に基づいた単なる例です。