本例子讲述一个在.Net core环境中对Redis数据库进行增删改查操作。

首先,要安装好Redis数据库,至于怎么安装,本文不再赘述,可以自行百度,有很详细的教程。

安装好之后,在CMD中输入

redis-cli



就会出现Redis数据库的IP和端口,记下,后面链接字符串中要用。

,然后新建一个.Net Core控制台应用程序。

在程序包管理器控制台中导入Redis数据库的驱动。

PM> Install-Package ServiceStack.Redis

程序包管理器控制台额度打开方式如下:

成功导入了驱动后,打开programe.cs,导入以下命名空间。

using ServiceStack;
using ServiceStack.Text;
using ServiceStack.Redis;
using ServiceStack.DataAnnotations;

然后新建一个Todo类。

using System;
using System.Collections.Generic;
using System.Text; namespace RedisDotNetDemo
{
class Todo
{
public long Id { get; set; }
public string Content { get; set; }
public int Order { get; set; }
public bool Done { get; set; }
}
}

回到Programe.cs中,在Main函数中添加以下代码。

  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();
}

结果如下:

可以看到执行删除操作后,已经没有结果输出了。

好了,这是一个简单的入门例子,后面我学习过程中有更多的心得体会还会再次总结,欢迎大家与我交流。

.Net Core使用Redis的一个入门简单Demo的更多相关文章

  1. ASP.NET Core与Redis搭建一个简易分布式缓存

    ​本文主要介绍了缓存的概念,以及如何在服务器内存中存储内容.今天的目标是利用IDistributedCache来做一些分布式缓存,这样我们就可以横向扩展我们的web应用程序. 在本教程中,我将使用Re ...

  2. 一个SpringMVC简单Demo中出现的错误

    最近在学springmvc 一个简答的Springmvc配置包括如下步骤: 1.在 web.xml 文件中配置 DispatcherServlet (该中央控制器相当于 MVC 模式中的 C),还可以 ...

  3. PHP + Redis 实现一个简单的twitter

    原文位于Redis官网http://redis.io/topics/twitter-clone Redis是NoSQL数据库中一个知名数据库,在新浪微博中亦有部署,适合固定数据量的热数据的访问. 作为 ...

  4. Dubbo入门—搭建一个最简单的Demo框架

    一.Dubbo背景和简介 1.电商系统的演进 Dubbo开始于电商系统,因此在这里先从电商系统的演变讲起. a.单一应用框架(ORM) 当网站流量很小时,只需一个应用,将所有功能如下单支付等都部署在一 ...

  5. Dubbo入门---搭建一个最简单的Demo框架(转)

    Dubbo背景和简介 Dubbo开始于电商系统,因此在这里先从电商系统的演变讲起. 单一应用框架(ORM) 当网站流量很小时,只需一个应用,将所有功能如下单支付等都部署在一起,以减少部署节点和成本.  ...

  6. Dubbo入门介绍---搭建一个最简单的Demo框架

    Dubbo入门---搭建一个最简单的Demo框架 置顶 2017年04月17日 19:10:44 是Guava不是瓜娃 阅读数:320947 标签: dubbozookeeper 更多 个人分类: D ...

  7. 一个最简单的Dubbo入门框架

    Dubbo背景和简介 Dubbo开始于电商系统,因此在这里先从电商系统的演变讲起. 1.单一应用框架(ORM) 当网站流量很小时,只需一个应用,将所有功能如下单支付等都部署在一起,以减少部署节点和成本 ...

  8. 180626-Spring之借助Redis设计一个简单访问计数器

    文章链接:https://liuyueyi.github.io/hexblog/2018/06/26/180626-Spring之借助Redis设计一个简单访问计数器/ Spring之借助Redis设 ...

  9. Python使用Redis实现一个简单作业调度系统

    Python使用Redis实现一个简单作业调度系统 概述 Redis作为内存数据库的一个典型代表,已经在非常多应用场景中被使用,这里仅就Redis的pub/sub功能来说说如何通过此功能来实现一个简单 ...

随机推荐

  1. 编程岗位电话面试问答Top 50[转]

    原文链接:http://blog.jobbole.com/84618/ 1. 从哈希表,二叉树和链表中取元素的时间复杂度?如果你有数百万记录呢? 哈希表的时间复杂度为O(1),二叉树为O(logN) ...

  2. Linux修改IP永久生效

    修改IP永久生效按以下方法: 1)修改配置文件vi /etc/sysconfig/network-scripts/ifcfg-eth0(eth0,第一块网卡,如果是第二块则为eth1) 按如下修改ip ...

  3. xcode7中使用cocos2d-x3.8的webview控件

    在XCode7中使用cocos2d-x 3.3以上版本的WebView控件时,碰到了编译错误 App Transport Security has blocked a cleartext HTTP ( ...

  4. javascript 数字字母组合的随机数

    Math.random()方法用于生成,结果为0-1间的一个伪随机数(包括0,不包括1) ,通常的办法是结合parseInt().Math.floor() 或者 Math.ceil()进行四舍五入处理 ...

  5. PHP 支持8种基本的数据类型

    四种标量类型: boolean (布尔型):这是最简单的类型,只有两种取值,可以为 TRUE/true 或 FALSE/false ,不区分大小写.详细请查看:PHP布尔类型(boolean)inte ...

  6. htmlUtil 网页爬取工具

    Htmlunit是一款模拟浏览抓取页面内容的Java框架,具有js解析引擎(rhino),可以解析页面的js脚本,得到完整的页面内容,特殊适合于这种非完整页面的站点抓取 /** * 获取页面的TITL ...

  7. docker 报错:x509: certificate has expired or is not yet valid

    环境:centos 7 程序:docker 下载镜像报错: # docker pull centos Pulling repository centos FATA[0004] Get https:// ...

  8. 请小心使用 ng-repeat 中的 $index

    自己自学的时候,遇到$index不知道它是如何使用的,所以上网搜了一下,发现了这个关于使用$index可能会出现的一个小BUG,和大家分享一下 PS:我是小白,欢迎指正,非常感谢! 以下是全文: &q ...

  9. Spring Data与elasticsearch版本对应关系

  10. iOS开发引入第三方类库的问题

    在开发iOS程序的过程中,通常在导入第三方的类库(.a/.o)文件会报出一系列的错误: Undefined symbols for architecture i386: "std::stri ...