0

Redisをテストしていますが、問題があります。8000を超えるアイテムを保存すると、2つ以上のレコードが失われます。失われるデータの量は、挿入されたレコードの量に比例します。

  class ProdutoDTO
  {
     public long id { get; set; }
     public string name { get; set; }
  }

 using (var produtosRedis = redisClient.GetTypedClient<ProdutoDTO>())
 {
     for (var i = 0; i < 15000; i++)
     {
        ProdutoDTO produto = new ProdutoDTO();
        produto.id = produtosRedis.GetNextSequence();
        produto.name = "test" + produto.id.ToString();
        produtosRedis.Store(produto);
     }
  }      

私は解決しました:

古いコード:

class ProdutoDTO  {
 public long id { get; set; }
 public string name { get; set; }
}

新しいコード:

class ProdutoDTO  {
 public long Id { get; set; }
 public string name { get; set; }
}

なぜなら、C#Redisクライアントは単一の主キーを持つすべてのPOCOで動作します-デフォルトではIDであると予想されます。

C#Redisの詳細:ServiceStack.Net Redis:関連オブジェクトと関連オブジェクトIDの保存

4

0 に答える 0