.net 操作redis

redis提供的五种数据类型

string(字符串),list(队列/栈),Hash(哈希),set(集合)及zset(sortedset) (有序集合)

1. 安装redis服务

    通过redis-server.exe redis.conf启动服务

2. 下载客户端dll文件

  ServiceStack.dll

  ServiceStack.Interfaces.dll

  ServiceStack.ServiceInterface.dll

  在.net 项目中添加以上dll的应用

3. c#操作redis代码如下

   创建redis对象实例

  

//直接创建redis客户端连接
//RedisClient redisClient=new RedisClient("127.0.0.1",6379);
//创建redis客户连接池
IRedisClientsManager iRedisClientsManager=new PooledRedisClientManager(new string[]{"127.0.0.1:6379"});
IRedisClient redisClient = iRedisClientsManager.GetClient();


 

   a.  string数据类型

redisClient.Set<int>("age", 22);
redisClient.Set<int>("age", 23);//key相同时会覆盖
redisClient.Set<string>("name", "张三");
redisClient.Set<string>("name", "张三new");
Console.WriteLine(redisClient.Get<string>("age"));
Console.WriteLine(redisClient.Get<string>("name"));

  b.  Hash

redisClient.SetEntryInHash("Person:1", "name", "zbc");
redisClient.SetEntryInHash("Person:1", "age", "22");
redisClient.SetEntryInHash("Person:1", "sex", "male");
redisClient.SetEntryInHash("Person:1", "birth", "2011-2-2");
//List<string> list = redisClient.GetHashKeys("Person:1");//获取所有key
List<string> list = redisClient.GetHashValues("Person:1");//获取所有values
foreach (string s in list)
{
    Console.WriteLine(s);
}

 c.  list->queue

redisClient.EnqueueItemOnList("name1","zbc0");
redisClient.EnqueueItemOnList("name1", "zbc1");
redisClient.EnqueueItemOnList("name1", "zbc2");
redisClient.EnqueueItemOnList("name1", "zbc3");
redisClient.EnqueueItemOnList("name1", "zbc4");
for (int i = 0; i < redisClient.GetListCount("name1"); i++)
{
   Console.WriteLine(redisClient.DequeueItemFromList("name1"));
}

    list->stack

redisClient.PushItemToList("name2","zangbc1");
redisClient.PushItemToList("name2", "zangbc2");
redisClient.PushItemToList("name2", "zangbc3");
for (int i = 0; i < redisClient.GetListCount("name2"); i++)
{
   Console.WriteLine(redisClient.PopItemFromList("name2"));
}

d. set

redisClient.AddItemToSet("set","set1");
redisClient.AddItemToSet("set", "set2");
redisClient.AddItemToSet("set", "set3");
redisClient.AddItemToSet("set", "set4");
redisClient.AddItemToSet("set", "set5");
redisClient.AddItemToSet("set1", "set6");
redisClient.AddItemToSet("set1", "set7");
redisClient.AddItemToSet("set1", "set8");
redisClient.AddItemToSet("set2", "set2");
redisClient.AddItemToSet("set2", "set3");
redisClient.AddItemToSet("set2", "set9");
HashSet<string> set = redisClient.GetAllItemsFromSet("set1");
//HashSet<string> set = redisClient.GetUnionFromSets(new string[] {"set", "set1"});//交集
//HashSet<string> set = redisClient.GetIntersectFromSets(new string[] { "set", "set2" });//并集
foreach (string s in set)
{
   Console.WriteLine(s);
}


e.  zset

redisClient.AddItemToSortedSet("sortedset", "aaaa");
redisClient.AddItemToSortedSet("sortedset", "bbbb");
redisClient.AddItemToSortedSet("sortedset", "cccc");
redisClient.AddItemToSortedSet("sortedset", "gggg");
redisClient.AddItemToSortedSet("sortedset", "eeee");
redisClient.AddItemToSortedSet("sortedset", "ffff");
List<string> set = redisClient.GetAllItemsFromSortedSet("sortedset");
foreach (string s in set)
{
   Console.WriteLine(s);
}


           


 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值