2017-02-07 3 views
0

タスク<String>は私がキャッシュから以前に保存したオブジェクトを読み取るためのコード行を使用しています

Task<string> responselist = cache["responselist"] as Task<string>; 

ラインは、私のようにresponselist変数を使用しています

cache.Set("responselist", response.Content.ReadAsStringAsync(), policy); 

理由をオブジェクトを保存するために使用しました私のメソッドで "タスク"オブジェクトを返すので、タイプのタスク。

私はWeb APIにかなり新しいです。私はちょうどそれがこれに理にかなっているか、より良い選択肢があるかどうかを知りたいですか?

PS:100%正常に動作します。

答えて

0

キーワードとしてasync/awaitキーワードを使用し、プリミティブ型をキャッシュに格納する必要があります。

public async Task Action(...) 
    { 
     string content = await response.Content.ReadAsStringAsync(); 
     cache.Set("responselist", content, policy); 

     /* ... */ 

     string content = cache["responselist"] as string; 
    } 

基本タイプ/ POCOクラスを格納する方がタスクのようなクラスよりも自然です。基本タイプを使用することで、キャッシュの容量を節約できます。

関連する問題