Redis入门教程(C#)
Redis是什么?
Redis是一个开源的、使用C语言编写的、支持网络交互的、可基于内存也可持久化的Key-Value数据库。
补充概念:
持久化:是将程序数据在持久状态和瞬时状态间转换的机制。通俗的讲,就是瞬时数据(比如内存中的数据,是不能永久保存的)持久化为持久数据(比如持久化至数据库中,能够长久保存)
Redis的安装、启动:
下载地址:https://github.com/MSOpenTech/redis/releases,可根据需要选择下载32位或者64位
这里我选择的是64位安装包:
然后解压安装包到指定目录。
接下来是Rdis的启动,打开一个cmd命令窗口,进入解压后的Redis目录,运行命令"redis-server.exe redis.windows.conf"即可启动Redis,启动后界面如下:
接下来介绍Redis的简单使用:
1.在VS 2017上新建一个项目,我这里创建的是控制台程序;
2.通过NuGet管理器安装ServiceStack.Redis库
3.新建一个测试类:
public class Todo { public long Id { get; set; } public string Content { get; set; } public int Order { get; set; } public bool Done { get; set; } }
4.测试代码如下,此过程中不能关闭之前的cmd窗口,不然会无法访问服务器:
static void Main(string[] args) { var redisManger = new RedisManagerPool("127.0.0.1:6379"); //Redis的连接字符串 var redis = redisManger.GetClient(); //获取一个Redis Client var redisTodos = redis.As<Todo>(); var newTodo = new Todo //实例化一个Todo类 { Id = redisTodos.GetNextSequence(), Content = "Learn Redis", Order = 1, }; redisTodos.Store(newTodo); //把newTodo实例保存到数据库中 增 Todo saveTodo = redisTodos.GetById(newTodo.Id); //根据Id查询 查 "Saved Todo: {0}".Print(saveTodo.Dump()); saveTodo.Done = true; //改 redisTodos.Store(saveTodo); var updateTodo = redisTodos.GetById(newTodo.Id); //查 "Updated Todo: {0}".Print(updateTodo.Dump()); redisTodos.DeleteById(newTodo.Id); //删除 var remainingTodos = redisTodos.GetAll(); "No more Todos:".Print(remainingTodos.Dump()); Console.ReadLine(); }
最终运行结果如下:

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Java源码阅读之ArrayList - JDK1.8
阅读优秀的源码是提升编程技巧的重要手段之一。 如有不对的地方,欢迎指正~ 转载请注明出处https://blog.lzoro.com。 前言 当你对某件事情很感兴趣的时候,时间的流逝在感知中都模糊了(是不是很文艺,绕口得都快听不懂了),通俗来说,就是时间过得很快。 而且,只有感兴趣才能驱动你继续下去,不然读源码,写解析博客这么高(Ku)大(Zao)上的事,是很难坚持的。 详细地写一篇源码解析博客少则半天一天,比如本篇,多则几天,比如红黑树在Java - HashMap中的应用,又要画图又要注释,还要排版,时不时要加点表情,开个车什么的,你说要是没兴趣,怎么坚持呢,还不如吃个鸡实在(啊,暴露了我是吃鸡选手)。 image 闲话少说,打开你的IDE,挽起袖子,开撸代码,加上注释,总计1461行代码。 基本介绍 常量 相比HashMap来说,ArrayList的常量算是短小精悍了,只有几个。 其中包含一个默认容量和两个空数组等,如下。 /** * 默认初始化容量 */ private static final int DEFAULT_CAPACITY = 10; /** * 空数组共享实例 ...
- 下一篇
第四章 对象与类
用户自定义类 注意在所有方法中都不要命名与实例域同名的变量 final修饰的大都是基本类型或不可变类的域, 可变类用final休息容易造成混乱 静态类和方法 final修饰的域可以是public的; NumberFormat使用工厂方法生成实例; 不用构造函数实例化的原因是(1)无法命名构造器,对于货币和百分比实例来说需要不同的名字;(2)使用构造器时无法改变对象类型 方法参数 Java参数的传递时按值传递, 对于引用类型来说,传递的不是引用,而是引用的拷贝,引用的拷贝还是值 初始化块也可以给数据域赋值,另外两种时构造器和声明
相关文章
文章评论
共有0条评论来说两句吧...