2017-03-07 3 views
0

私はこのパッケージMicrosoft.Extensions.Caching.Redisを使用しています。 tModelをキャッシュに設定して取得する方法は何ですか。オブジェクトをDistributedCache setメソッドに渡すか?

public class TestModel 
{ 
    public int test1 { get; set; } 

    public string test2 { get; set; } 
} 

var tModel = new TestModel(); 
tModel.test1 = 1; 
tModel.test2 = "abc"; 

_distributedCache.Set("model", tModel); 

答えて

1

Iは、JSONにデータをシリアル化し、文字列として永続なる:ここGetStringSetString拡張メソッドを使用

using Newtonsoft.Json; 

// ... 

// Set 
var jsonData = JsonConvert.SerializeObject(tModel); 
_distributedCache.SetString("model", jsonData); 

// Get 
var jsonData = _distributedCache.GetString("model"); 
var tModel = JsonConvert.DeserializeObject<TestModel>(jsonData); 

注意はなく、低レベルGetSet方法バイトを受け取って返します。利用可能な非同期メソッドもあります。

関連する問題