博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何在ASP.NET Core中使用Redis
阅读量:6896 次
发布时间:2019-06-27

本文共 2209 字,大约阅读时间需要 7 分钟。

注:本文提到的代码示例下载地址> 

是一个开源的内存中的数据结构存储系统,可以用作数据库、缓存和消息中间件。它支持多种类型的数据结构:字符串,哈希表,列表,集合,有序集等等。

Redis 官方没有推出Windows版本,倒是由Microsoft Open Tech提供了 版本支持。

如何在Windows机器上安装Redis=>下载安装文件,安装完毕之后,打开service管理器,找到Redis服务,并将其启动。

 

前期准备:

1.推荐使用Visual Studio 2015 Update3作为你的IDE,下载地址:

2.你需要安装.NET Core的运行环境以及开发工具,这里提供VS版:

创建项目:

打开VS 2015,新建->项目->C#模板->Web->ASP.NET Core Web Application(.NET Core)

 

 选择好路径,项目名为CSCoreRedis,确定后选择Web Application,身份验证选择无。

项目创建完之后,在CSCoreRedis项目上右键选择管理NuGet包,搜索StackExchange.Redis并安装。

我们将用这个库提供的接口去操作Redis。

代码:

首先要在HomeController.cs中添加Redis的连接,如果你不是用的本地Redis服务,请自行修改连接字符串。   

private static Lazy
lazyConnection = new Lazy
(() =>{ return ConnectionMultiplexer.Connect("localhost,abortConnect=false");});public static ConnectionMultiplexer Connection{ get { return lazyConnection.Value; }}

添加构造函数,初始化database和List。这里使用ListLeftPush是为了在后面用ListRange的时候从左到右取能取到最新的数据。

public static string ListKeyName = "MessageList";public HomeController(){    db = Connection.GetDatabase();    if (db.IsConnected(ListKeyName) && (!db.KeyExists(ListKeyName) || !db.KeyType(ListKeyName).Equals(RedisType.List)))    {        //Add sample data.        db.KeyDelete(ListKeyName);        //Push data from the left        db.ListLeftPush(ListKeyName, "TestMsg1");        db.ListLeftPush(ListKeyName, "TestMsg2");        db.ListLeftPush(ListKeyName, "TestMsg3");        db.ListLeftPush(ListKeyName, "TestMsg4");    }}

修改Index.cshtml文件,添加输入框及按钮

在controller中添加SendMessage方法

[HttpPost]public ActionResult SendMessage(string message){       if (db.IsConnected(ListKeyName))    {        db.ListLeftPush(ListKeyName, message);    }    return RedirectToAction("Index");}

显示错误信息或信息列表

@if (@ViewData["Error"] != null){    

@ViewData["Error"]

}else{

Latest messages

@foreach (var msg in Model) {
@Html.DisplayFor(modelItem => msg)
}
}

 我们来看一下运行结果

在输入框中输入字符,按下Send按钮,页面上将会显示最新的5条信息。

 

下载完整的代码,请访问 

要了解更多关于Redis的信息,请访问Redis官方网站

关于StackExchange.Redis的详细文档,请访问

如需了解微软Azure Redis 缓存,请访问

更多脚本样例, 访问微软One Code样例库:http://aka.ms/onescriptsamples 更多代码样例, 访问微软One Script样例库:http://aka.ms/onecodesamples

转载地址:http://hlddl.baihongyu.com/

你可能感兴趣的文章
11.2JS笔记
查看>>
Qt学习之路_8(Qt中与文件目录相关操作)
查看>>
vs2010中设置qt环境的智能识别方案
查看>>
开博啦
查看>>
ZOJ 1081 Points Within( 判断点在多边形内外 )
查看>>
flex模拟微信布局
查看>>
多线程测试java接口
查看>>
with 语句
查看>>
js基础知识点总结
查看>>
HTML5的新增方法
查看>>
protobuf c++例子
查看>>
eclipse中tomcat端口被占用如何解决
查看>>
通过CImageList加载图标 报错
查看>>
纯小白入手 vue3.0 CLI - 3.2 - 路由的初级使用
查看>>
安卓开发笔记——探索EventBus(转)
查看>>
Logminer实战
查看>>
桌面虚拟化之PCoIP访问协议会话统计功能
查看>>
在.NET开发中的单元测试工具之(1)——NUnit
查看>>
PostgreSQL 使用 LDAP 认证方式
查看>>
委托事件和jquery中的delegate方法
查看>>