在Redis编程中, 实体和集合类型则更加有趣和实用
namespace Zeus.Cache.Redis.Demo { public class Person { public int Id { get; set; } public string Name { get; set; } public string Surname { get; set; } public int Age { get; set; } public string Profession { get; set; } } }
namespace Zeus.Cache.Redis.Demo { public class Phone { public int Id { get; set; } public string Model { get; set; } public string Manufacturer { get; set; } public Person Owner { get; set; } } }
public void EntityDemo() { using (RedisClient redisClient = new RedisClient(host)) { IRedisTypedClient<Phone> phones = redisClient.As<Phone>(); Phone phoneFive = phones.GetValue("5"); if (phoneFive == null) { // make a small delay Thread.Sleep(2000); // creating a new Phone entry phoneFive = new Phone { Id = 5, Manufacturer = "Nokia", Model = "Lumia 200", Owner = new Person { Id = 1, Age = 90, Name = "OldOne", Profession = "sportsmen", Surname = "OldManSurname" } }; // adding Entry to the typed entity set phones.SetEntry(phoneFive.Id.ToString(), phoneFive); } string message = "Phone model is " + phoneFive.Manufacturer; message += "\nPhone Owner Name is: " + phoneFive.Owner.Name; Console.WriteLine(message); } }
运行结果: