首先引用 nuget Abp.RedisCache

在 appsettings.json加上Redis服务器配置

  "RedisCache": {
"ConnectionString": "xx.xx.xx.xx:5001,password=xxx",
"DatabaseId": "-1" }

  

然后在项目的依赖文件 AbpModule里加上Redis相关配置

 using Abp.AutoMapper;
using Abp.Modules;
using Abp.Reflection.Extensions;
using Abp.Runtime.Caching.Redis;
using System; namespace BossHelper
{
[DependsOn(
typeof(BossHelperCoreModule),
typeof(AbpAutoMapperModule),
typeof(AbpRedisCacheModule)
)] public class BossHelperApplicationModule : AbpModule
{
public override void PreInitialize()
{
int DatabaseId = -;
int.TryParse(ConfigHelper.GetAppSetting("App", "RedisCache:DatabaseId"), out DatabaseId);
//配置使用Redis缓存
Configuration.Caching.UseRedis(options =>
{
options.ConnectionString = ConfigHelper.GetAppSetting("App", "RedisCache:ConnectionString");
options.DatabaseId = DatabaseId;
}); //配置所有Cache的默认过期时间为2小时
Configuration.Caching.ConfigureAll(cache =>
{
cache.DefaultSlidingExpireTime = TimeSpan.FromHours();
}); //配置指定的Cache过期时间为10分钟
Configuration.Caching.Configure("BossAssistant", cache =>
{
cache.DefaultSlidingExpireTime = TimeSpan.FromMinutes();
}); Configuration.Authorization.Providers.Add<BossHelperAuthorizationProvider>();
} public override void Initialize()
{
var thisAssembly = typeof(BossHelperApplicationModule).GetAssembly(); IocManager.RegisterAssemblyByConvention(thisAssembly); Configuration.Modules.AbpAutoMapper().Configurators.Add(
// Scan the assembly for classes which inherit from AutoMapper.Profile
cfg => cfg.AddProfiles(thisAssembly)
);
}
}
}
 
 
最后使用

1)实例化

 public ILogger Logger { get; set; }
private readonly string AppId = ConfigHelper.GetAppSetting("App", "AppID");
private readonly string AppSecret = ConfigHelper.GetAppSetting("App", "AppSecret");
private readonly ICacheManager _cacheManage; private readonly IRepository<wxapp_user, long> _wxappUserRepository;
private readonly IRepository<boss_admin, long> _bossAdminRepository;
private readonly IRepository<BossQrcode, long> _bossQrCodeRepository;
private readonly IRepository<boss_role, long> _bossRoleRepository;
private readonly IRepository<shopinfo, long> _shopInfoRepository; public WxappUserService(IRepository<wxapp_user, long> wxappUserRepository, IRepository<boss_admin, long> bossAdminRepository, IRepository<BossQrcode, long> bossQrCodeRepository, IRepository<boss_role, long> bossRoleRepository, IRepository<shopinfo, long> shopInfoRepository, ICacheManager cacheManage)
{
_wxappUserRepository = wxappUserRepository;
_bossAdminRepository = bossAdminRepository;
_bossQrCodeRepository = bossQrCodeRepository;
_bossRoleRepository = bossRoleRepository;
_shopInfoRepository = shopInfoRepository;
Logger = NullLogger.Instance;
_cacheManage = cacheManage;
}

2)SET

   _cacheManage.GetCache("BossAssistant").Set(codeResult.openid, codeResult.session_key);

  

3)GET

   var sessionKey = _cacheManage.GetCache("BossAssistant").Get(model.openid, (val) =>
{
return val;
}) as string;

4)查看  

abp框架里使用Redis的更多相关文章

  1. ABP module-zero +AdminLTE+Bootstrap Table+jQuery权限管理系统第十五节--缓存小结与ABP框架项目中 Redis Cache的实现

    返回总目录:ABP+AdminLTE+Bootstrap Table权限管理系统一期 缓存 为什么要用缓存 为什么要用缓存呢,说缓存之前先说使用缓存的优点. 减少寄宿服务器的往返调用(round-tr ...

  2. ABP开发框架前后端开发系列---(15)ABP框架的服务端和客户端缓存的使用

    缓存在一个大型一点的系统里面是必然会涉及到的,合理的使用缓存能够给我们的系统带来更高的响应速度.由于数据提供服务涉及到数据库的相关操作,如果客户端的并发数量超过一定的数量,那么数据库的请求处理则以爆发 ...

  3. 后台工作者HangFire与ABP框架Abp.Hangfire及扩展

    HangFire与Quartz.NET相比主要是HangFire的内置提供集成化的控制台,方便后台查看及监控,对于大家来说,比较方便. HangFire是什么 Hangfire是一个开源框架(.NET ...

  4. ABP module-zero +AdminLTE+Bootstrap Table+jQuery权限管理系统第十四节--后台工作者HangFire与ABP框架Abp.Hangfire及扩展

    返回总目录:ABP+AdminLTE+Bootstrap Table权限管理系统一期 HangFire与Quartz.NET相比主要是HangFire的内置提供集成化的控制台,方便后台查看及监控,对于 ...

  5. 中小研发团队架构实践之生产环境诊断工具WinDbg 三分钟学会.NET微服务之Polly 使用.Net Core+IView+Vue集成上传图片功能 Fiddler原理~知多少? ABP框架(asp.net core 2.X+Vue)模板项目学习之路(一) C#程序中设置全局代理(Global Proxy) WCF 4.0 使用说明 如何在IIS上发布,并能正常访问

    中小研发团队架构实践之生产环境诊断工具WinDbg 生产环境偶尔会出现一些异常问题,WinDbg或GDB是解决此类问题的利器.调试工具WinDbg如同医生的听诊器,是系统生病时做问题诊断的逆向分析工具 ...

  6. ABP入门系列(1)——学习Abp框架之实操演练

    作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...

  7. 高薪诚聘熟悉ABP框架的.NET高级开发工程师(2016年7月28日重发)

    招聘单位是ABP架构设计交流群(134710707)群主阳铭所在的公司-上海运图贸易有限公司 招聘岗位:.NET高级开发工程师工作地点:上海-普陀区 [公司情况]上海运图贸易有限公司,是由易迅网的创始 ...

  8. ABP框架 - 集成OWIN

    文档目录 如果你在应用中同时使用Asp.net Mvc和Asp.net Web API,你需要在你的项目里添加Abp.Owin的nuget包(通常是Web项目)然后在你的OWIN的Startup文件里 ...

  9. ABP框架 - 依赖注入

    文档目录 本节内容: 什么是依赖注入 传统方式的问题 解决方案 构造器注入模式 属性注入模式 依赖注入框架 ABP 依赖注入基础 注册依赖 约定注入 辅助接口 自定义/直接 注册 使用IocManag ...

随机推荐

  1. Solidity中如何判断mapping中某个键是否为空呢?

    Solidity中如何判断mapping中某个键是否为空呢? 一.比较标准的做法是建立一个专门和value相关的结构体,用一个布尔型变量来看是否这个key所对应的value被赋过值 代码如下: pra ...

  2. <Think Python>中斐波那契使用memo实现的章节

    If you played with the fibonacci function from Section 6.7, you might have noticed thatthe bigger th ...

  3. elasticSearch6源码分析(6)http和transport模块

    1.http模块概述 The http module allows to expose Elasticsearch APIs over HTTP. The http mechanism is comp ...

  4. Jmeter接口测试动态传参——动态获取token值

    先添加一个线程组,然后在线程组下添加HTTP Request 环境变量: 线程组下添加User Defined Variables 调用变量:${变量名} 添加结果树: 记录登录后的token: 获取 ...

  5. spring@value取不到值的几种情况

    一,spring组件重写构造方法,在构造方法中引用@value为null 由于spring实例化顺序为先执行构造方法,再注入成员变量,所以序为先执行构造方法,再注入成员变量,所以ing实例化顺取值为n ...

  6. 撩课-Web大前端每天5道面试题-Day36

    1.介绍一下你对浏览器内核的理解? 主要分成两部分:渲染引擎(layout engineer或Rendering Engine)和JS引擎. 渲染引擎:负责取得网页的内容(HTML.XML.图像等等) ...

  7. HDU3625(SummerTrainingDay05-N 第一类斯特林数)

    Examining the Rooms Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Othe ...

  8. 前端面试(原生js篇) - DOM

    根据我的面试经历,一般小公司的面试环节,比较关心框架的熟练程度,以及独立开发组件的能力 但大厂通常有五轮以上的面试,而且对 js 基础语法很是看重 于是我总结了一些关于 js 基础的面试对话,有的当时 ...

  9. js-ES6学习笔记-Class(3)

    1.Class之间可以通过extends关键字实现继承. class ColorPoint extends Point { constructor(x, y, color) { super(x, y) ...

  10. js获取浏览器和设备相关width(屏幕的宽度)

    首先呢,我们将iPhone手机的相关数据表示如下 我们要理解很多东西,比如逻辑分辨率.物理分辨率.缩放因子.ppi等,这里先不讨论. 首先呢,我们先介绍下各个屏幕宽度: 网页可见区域宽: docume ...