有効な xml を含む URL がありますが、RestClient でこれを取得する方法がわかりません。文字列をダウンロードして、WebClient で既に行っているように解析できると思いました。
やっている:
public static Task<String> GetLatestForecast(string url)
{
var client = new RestClient(url);
var request = new RestRequest();
return client.ExecuteTask<String>(request);
}
「文字列」は、パブリックなパラメーターなしのコンストラクターを持つ非抽象型でなければならないことについて VS を泣かせます。
実行タスクを参照してください。
namespace RestSharp
{
public static class RestSharpEx
{
public static Task<T> ExecuteTask<T>(this RestClient client, RestRequest request)
where T : new()
{
var tcs = new TaskCompletionSource<T>(TaskCreationOptions.AttachedToParent);
client.ExecuteAsync<T>(request, (handle, response) =>
{
if (response.Data != null)
tcs.TrySetResult(response.Data);
else
tcs.TrySetException(response.ErrorException);
});
return tcs.Task;
}
}
}
ライブ タイルに関するすばらしいチュートリアルを提供してくれた Claus Jørgensen に感謝します。
文字列を解析するのを待っているパーサーが既にあるので、文字列をダウンロードしたいだけです:-)