StackExchange.Redis的常用数据类型

一、CommandFlags枚举

None = 0;	//默认
HighPriority = 1;	//不用了,废弃
FireAndForget = 2; //对结果不感兴趣,调用者将会立即收到默认值
PreferMaster = 0; //如果主服务器可用,则应在主服务器上执行此操作,但可以执行读操作
DemandMaster = 4; //此操作只应在[主站]上执行
PreferSlave = 8;	//如果可用,则应在[从站]上执行此操作,但将在其上执行
DemandSlave = 12;	//此操作只应在[从站]上执行。 仅适用于读取操作。
NoRedirect = 64;	//表示由于ASK或MOVED响应,不应将此操作转发到其他服务器
NoScriptCache = 512 //表示与脚本相关的操作应使用EVAL,而不是SCRIPT LOAD + EVALSHA

一般都使用默认值就可以,如果对性能有特殊的要求则可以分类处理,比如说读操作使用在从服务器上执行。写操作使用主服务器。如果对结果不敢兴趣可以使用FireAndForget, 效率非常高。

二、When 枚举

Always: 一直
Exists: 当key 存在时才生效
NotExists; 当key 不存在时才生效

三、RedisKey 结构

表示redis的键,实质是string
可以隐式装换为 stringbyte[],并重写了与两者的比较。
Apend 方法 追加
Prepend 方法 追加到

四、RedisValue 结构

表示redis的值,实质是string 这个很重要比如说两个数字相加是字符串相加,不是数值相加
可以隐士转换为stringbyte[] ,int long 等整数型
Box 装箱
UnBox 拆箱

isInteger 属性,这个特别注意,所有从redis读取出来的值都是FALSE,他表示的是原始值是否是int,redis中都是string存储。所以都是false
IsNull 是否是null
isNullOrEmptynull 或者是空字符串
HasValue 除上面三个之外的都是True

五、HashEntry 结构

用来表示从redishash数据中读取键值对
NameValue都是RedisValue类型

你可能感兴趣的:(StackExchange.Redis的常用数据类型)