2016-03-06 11 views

答えて

9

あなただけ.Resultを取ることによって、任意のタスクブロックを行うことができます。

string response = client.GetStringAsync(...).Result; 

しかし、これはあなたがそれを行うべきではないUIスレッド上で実行されている場合。 UIスレッドのブロッキングがうまくいきません。非同期を受け入れる。

+1

ありがとう...私はすべての私の心でそれを受け入れる...ちょうどテスト/学習の目的のために知りたがっています... –

+0

これを行う前に考えるべきちょうど1つ:これはエラー処理を完全に変更します。 WebExceptionの代わりに、AggregateExceptionsは設計によってのみ受け取ります。また、httpClientには、タイムアウトが発生した場合に一般的なTaskCanceledExceptionを生成するバグがあるようです。 – Andreas

1

RestSharpはHttpClientをに優れたオープンソースの代替です。これは、同期要求と非同期要求の両方をサポートします。

http://restsharp.org/

関連する問題