加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

ASP.NET核心中的Redis缓存

发布时间:2020-12-16 03:46:59 所属栏目:asp.Net 来源:网络整理
导读:我是Redis的新手并使用VS 2015和ASP.NET Core应用程序(v 1.0),我安装了nugget包: Install-Package StackExchange.Redis 但是我无法将其注入并配置到我的服务中,没有RedisCache或“AddDistributedRedisCache”方法. 我该如何注射和使用它? 解决方法 01.从 d
我是Redis的新手并使用VS 2015和ASP.NET Core应用程序(v 1.0),我安装了nugget包:

Install-Package StackExchange.Redis

但是我无法将其注入并配置到我的服务中,没有RedisCache或“AddDistributedRedisCache”方法.

我该如何注射和使用它?

解决方法

01.从 download下载最新的redis,从services.msc安装并启动redis服务

02.在project.json中添加两个库

"Microsoft.Extensions.Caching.Redis.Core": "1.0.3","Microsoft.AspNetCore.Session": "1.1.0",

03.添加依赖注入

public void ConfigureServices(IServiceCollection services)
    {
        services.AddApplicationInsightsTelemetry(Configuration);

        services.AddMvc();
        //For Redis
        services.AddSession();
        services.AddDistributedRedisCache(options =>
        {
            options.InstanceName = "Sample";
            options.Configuration = "localhost";
        });
  }

>并在Configure方法中添加app.UseMvc行的顶部

app.UseSession();

在asp.net核心的会话存储中使用redis.现在你可以在HomeController.cs中使用这样的东西

public class HomeController : Controller
{
    private readonly IDistributedCache _distributedCache;
    public HomeController(IDistributedCache distributedCache)
    {
        _distributedCache = distributedCache;
    }
    //Use version Redis 3.22
    //https://stackoverflow.com/questions/35614066/redissessionstateprovider-err-unknown-command-eval
    public IActionResult Index()
    {
        _distributedCache.SetString("helloFromRedis","world");
        var valueFromRedis = _distributedCache.GetString("helloFromRedis");
        return View();
    }
 }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读