ServiceStack 程序集里面没有方法注解,我在这里将注解添加上去,有不当之处,欢迎指正

                Console.WriteLine("---Set类型---");
//添加 setId集合中添加item值
client.AddItemToSet(setId, item);
//setId集合中添加多个item
client.AddRangeToSet(setId,items);
//获取 随机获取setId集合中的一个值
client.GetRandomItemFromSet(setId);
//获取setId集合值的数量
client.GetSetCount(setId);
// 获取setId集合中所有的值
client.GetAllItemsFromSet(setId);
// 随机删除setId集合中的一个值
client.PopItemFromSet(setId);
// 删除setId集合中的item
client.RemoveItemFromSet(setId, item);
//从fromSetId集合中移除值为item的值,并把item添加到toSetId集合中
client.MoveBetweenSets(fromSetId, toSetId, item);
//返回多个setId集合中的并集,返还hashset
client.GetUnionFromSets(setIds);
//返回多个setId集合中的交集,返还hashset
client.GetIntersectFromSets(setIds);
//返回fromSetId 与多个withSetId集合中的差集,返还hashset
client.GetDifferencesFromSet(fromSetId, withSetIds);
// 多个setId集合中的并集,放入intoSetId集合中
client.StoreUnionFromSets(intoSetId, setIds);
//把fromSetId集合中的数据与withSetIds集合中的数据对比,fromSetId集合中不存在keys集合中,则把这些不存在的数据放入intoSetId集合中
client.StoreDifferencesFromSet(intoSetId, fromSetId, withSetIds);

下面是数据输入

                //1.添加,value不重复,添加多个Marren1也只有一个
//单个添加 关注刘备的用户
client.AddItemToSet("刘备", "小1");
client.AddItemToSet("刘备", "小2");
client.AddItemToSet("刘备", "小2");
client.AddItemToSet("刘备", "小3");
client.AddItemToSet("刘备", "小3");
client.AddItemToSet("刘备", "小3");
client.AddItemToSet("刘备", "小4");
client.AddItemToSet("刘备", "小5");
client.AddItemToSet("刘备", "小6");
client.AddItemToSet("刘备", "小7");
client.AddItemToSet("刘备", "小8");
client.AddItemToSet("刘备", "小8");
//2.获取setId集合的数量
long count1= client.GetSetCount("刘备");
//3.判断setId中是否包含指定值
bool b1=client.SetContainsItem("刘备", "小5");
//4.随机获取setId集合中的一个值
string value1=client.GetRandomItemFromSet("刘备");
//5.获取setId中的所有值
HashSet<string> user1= client.GetAllItemsFromSet("刘备");

效果图

删除几条数据

                //6. 删除setId中指定value
client.RemoveItemFromSet("刘备", "小6");
//7. 随机删除setId集合中的一个值,并返回该值
string value2=client.PopItemFromSet("刘备");
// 随机删除setId集合中的2个值,并返回这2个值
List<string> value3 = client.PopItemsFromSet("刘备", 2);

再添加一个集合 “张飞”

                //多添加 关注张飞的用户
List<string> items = new List<string>() { "小1", "小12", "小3", "小3", "小3", "小14", "小5" , "小16", "小7", "小8", "小18" };
client.AddRangeToSet("张飞", items);
HashSet<string> user2 = client.GetAllItemsFromSet("张飞");

下面就是集合一些操作:交、并、差、补

                //获取交集
HashSet<string> data1=client.GetIntersectFromSets("刘备", "张飞");
//获取并集
HashSet<string> data2 = client.GetUnionFromSets("刘备", "张飞");
//获取差集
HashSet<string> data3 = client.GetDifferencesFromSet("刘备","张飞");
//补集
client.StoreDifferencesFromSet("关羽", "刘备", "张飞");
HashSet<string> data4 = client.GetAllItemsFromSet("关羽");

C# 通过ServiceStack 操作Redis——Set类型的使用及示例的更多相关文章

  1. C# 通过ServiceStack 操作Redis——String类型的使用及示例

    1.引用Nuget包 ServiceStack.Redis 我这里就用别人已经封装好的Reids操作类,来演示,并附上一些说明 RedisConfigInfo--redis配置文件信息 /// < ...

  2. C# 通过ServiceStack 操作Redis——List类型的使用及示例

    Redis list的实现为一个双向链表,即可以支持反向查找和遍历,更方便操作,不过带来了部分额外的内存开销, /// <summary> /// Redis list的实现为一个双向链表 ...

  3. C# 通过ServiceStack 操作Redis——ZSet类型的使用及示例

    Sorted Sets是将 Set 中的元素增加了一个权重参数 score,使得集合中的元素能够按 score 进行有序排列 /// <summary> /// Sorted Sets是将 ...

  4. servicestack操作redis

    tatic void Main(string[] args) { );//redis服务IP和端口 #region =insert= var storeMembers = new List<st ...

  5. go使用go-redis操作redis 连接类型,pipline, 发布订阅

    内容: 一 . 客户端Client(普通模式,主从模式,哨兵模式)二. conn连接(连接, pipline, 发布订阅等)三. 示例程序(连接, pipline, 发布订阅等)客户端Client 普 ...

  6. python 操作redis数据

    python 操作redis 各种类型的数据 # encoding:utf-8 import redis import time def main(): """ redi ...

  7. python操作Redis安装、支持存储类型、普通连接、连接池

    一.python操作redis安装和支持存储类型 安装redis模块 pip3 install redis 二.Python操作Redis之普通连接 redis-py提供两个类Redis和Strict ...

  8. 第二百九十九节,python操作redis缓存-SortSet有序集合类型,可以理解为有序列表

    python操作redis缓存-SortSet有序集合类型,可以理解为有序列表 有序集合,在集合的基础上,为每元素排序:元素的排序需要根据另外一个值来进行比较,所以,对于有序集合,每一个元素有两个值, ...

  9. 第二百九十八节,python操作redis缓存-Set集合类型,可以理解为不能有重复元素的列表

    python操作redis缓存-Set集合类型,可以理解为不能有重复元素的列表 sadd(name,values)name对应的集合中添加元素 #!/usr/bin/env python # -*- ...

随机推荐

  1. codeforce 849B

    B. Tell Your World time limit per test 1 second memory limit per test 256 megabytes input standard i ...

  2. 痞子衡嵌入式:超级下载算法(RT-UFL)开发笔记(4) - 轮询Flash配置参数

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是超级下载算法开发笔记(4)之轮询Flash配置参数. 文接上篇 <超级下载算法(RT-UFL)开发笔记(3) - 统一FlexSP ...

  3. css position sticky All In One

    css position sticky All In One css sticky & 吸顶效果 demo https://codepen.io/xgqfrms/pen/PoqyVYz ref ...

  4. vue & arrow function error

    vue & arrow function error <template> <div class="home"> <img alt=" ...

  5. Promise nested then execute order All In One

    Promise nested then execute order All In One Promise nested then nested Promise not return new Promi ...

  6. UIKit and SwiftUI

    UIKit and SwiftUI Live Preview Try Again or Resume refs xgqfrms 2012-2020 www.cnblogs.com 发布文章使用:只允许 ...

  7. free ebooks all in one

    free ebooks all in one pdf / ppt mobi / epub free programming ebooks free IT ebooks open free ebooks ...

  8. C++ 中的智能指针-基础

    简介 在现代 C++ 编程中,标准库包含了智能指针(Smart pointers). 智能指针用来确保程序不会出现内存和资源的泄漏,并且是"异常安全"(exception-safe ...

  9. mybatisPlus中的模糊查询问题

    不能查询中文 记得在数据库的配置中写明编码格式characterEncoding=utf-8

  10. Hbase ——Not only SQL

    HBase -- NoSQL_Not Only SQL NoSQL数据库: 不遵循传统的RDBMS模型 解决数据库的可伸缩性和可用性(多机器) 数据是非关系的(可切分),不使用sql语句 不针对原子性 ...