首次使用ServiceStack Redis。我环顾网络,找不到一个非常基本的例子。我找到的最近的是this和this。只是想知道如果我做得对。感谢。
注意:假设我使用的是using语句。我把它拿出来是因为StackOverflow抱怨说我的代码太多了。 使用(var client = RedisManager.GetClient()。GetTypedClient())
public class TestUser
{
public string UserName;
}
public IEnumerable<TestUser> GetAll()
{
return client.Lists["Users"].AsQueryable();
}
public void UpdateAll(IEnumerable<TestUser> users)
{
var list = client.Lists["Users"];
foreach (var testUser in users)
{
client.SetEntry(testUser.UserName, testUser);
client.Store(testUser);
if (!list.Contains(testUser))
list.Add(testUser);
}
client.SaveAsync();
}
public TestUser Get(string username)
{
return client.GetById(username);
}
public void Update(TestUser model)
{
client.SetEntry(model.UserName, model);
client.Store(model);
client.SaveAsync();
}
public void Delete(string username)
{
client.DeleteById(username);
client.SaveAsync();
}
修改:StackOverFlow Example。我对Id的感到困惑。第102行生成魔术字符串别名,第116行创建数字标识。什么是别名,什么是Id?当我得到实体(第123行)我使用的是哪一个? id可以是一个字符串吗?有没有办法使用字符串ID获取条目?我应该转换为多头吗?
答案 0 :(得分:1)
许多ServiceStack live demos都有Redis CRUD示例。最简单的是Backbone Todos implementation的Redis后端。另请参阅Redis StackOverflow implementation,这是一个很好的示例,说明如何创建手动索引来维护引用数据。