zoukankan      html  css  js  c++  java
  • Redis in .NET Core 入门:(3) Hash

    第1篇:https://www.cnblogs.com/cgzl/p/10294175.html

    第2篇 String:https://www.cnblogs.com/cgzl/p/10297565.html

    Hash

    Redis的Hash有点像一个对象(object),一个Hash里面可以存多个Key-Value对作为它的field,所以它通常可以用来表示对象。

    Hash里面能存放的值也能作为String类型来存储,如果Hash里面值的类型可以解析为数字,那么也可以进行自增自减等操作。

    主要命令

    Hash相关的命令都是以H开头

    HSET

    HSET 设置Hash里面的值:

    格式为:hset hash-key field1 field1value field2 field2value ... 

    注:HMSET的功能和HSET貌似是一样的。

    关于Hash的key的更实际用法是这样:

    通常在Hash的Key中使用冒号:,这样可以做出来类似命名空间的效果。

    user:1000可以表示ID为1000的用户。

    HGET

    HGET通过Hash里面的key获取其对应的值:

    HGETALL

    如果想获得Hash所有的Key-Value对,那就使用HGETALL

    注意其结果是如何显示的。

    HMGET

    HMSET可以设置Hash里多个Key的值,而HMGET可以通过Hash的多个Key获取其对应的值:

    但是它不会返回Key。

    HINCRBY

    如果Hash里某个Field值的类型可以解析成数值,那么还可以用HINCRBY来做自增:

    其它命令

    其它命令还有HDELHEXISTSHINCRBYFLOATHKEYSHLENHSCANHSETNXHVALS请参照官方文档自行摸索。

    用.NET Core操练

    准备一个C#对象:

    然后从网上抄袭了一个C#对象和Redis HashEntry[]之间转换的工具类:

    HSET,HGETALL

    结果:

    HGET

    结果:

    HMGET

    HMGET是使用HashGet的另一个Overload方法:

    结果:

    HINCRBY

    结果:

    HDEL

    结果:

    HSCAN

    HSCAN返回的类型是IEnumerable<HashEntry>

    结果:

  • 相关阅读:
    重写gallery 的 BaseAdapter
    excel数据导入DB
    更换 字体
    Android Activity跳转 Intent
    mpax5.0比mapx4.51多了些什么功能?
    [转载]INET控件的几点使用
    [转载]GIS基本概念集锦
    [转载]Microsoft.XMLHTTP对象
    等值线的绘制
    [转载]关于webbrowser,innet,xmlhttp获取网页源码的比较!
  • 原文地址:https://www.cnblogs.com/cgzl/p/10301916.html
Copyright © 2011-2022 走看看