0

当前扩展缓存策略没有进行注册

微信开发 · gis008 · 查看 2987 次 · 于 2年前

策略缓存注册

已经按DEMO上说的加了 register.UseSenparcWeixin(senparcWeixinSetting, senparcSetting)这个全局的,调用JSAPI的时候还是会提示当前扩展缓存策略没有进行注册,不知道什么原因?
您尚未登录,请:网站登录 or 微信登录
共收到 29 条回复
0

gis008 2年前

已解决,是那个Senparc.Wenxin.Cache.Redis的DLL没引用进来,把代码拉来调试才发现这个问题。

0

guoxian 2年前

我之前也是这个问题, 今天才发现是demo排版的问题。 在  demo中   注册时 register.UseSenparcWeixin(senparcWeixinSetting, senparcSetting) 这个 后面并不是;而是 ·  往下看两行 有个这个
//注册公众号(可注册多个)                                                -- DPBMARK MP
               .RegisterMpAccount(senparcWeixinSetting, "【盛派网络小助手】公众号")// DPBMARK_END

0

gis008 2年前

trunk\Samples\Senparc.Weixin.MP.Sample\Senparc.Weixin.MP.Sample,是这个路径的DEMO,刚才试了一下,把global里面的代码都复制出来,放在项目里还是出现这个扩展缓存没有注册的报错。

0

Senparc 2年前

可是vs2017的sln没有global,这个是另外两个sln里面才有的

0

gis008 2年前

在global文件里register公众号那个方法就会提示扩展缓存没有注册

0

gis008 2年前

不会的,已经卡在那很久了,对了好多遍

0

Senparc 2年前

好的,我估计还是代码参考有遗漏,包括找的demo不对。

0

gis008 2年前

我明天把路径发给你看一下,这会没在电脑旁。用发一样的,很奇怪。我建的是webapi的项目,不知道有没影响?我没调api的地方都能用redis

0

Senparc 2年前

那你应该看普通的Sample,不带vs2017的sln,这个就是.net core的。

0

gis008 2年前

. net框架的,不是core

0

Senparc 2年前

vs2017.sln,是.net core的,应该没有protected void Application_Start这个方法的,这个是.net4.5的

0

gis008 2年前

公众号里面有个2017的

0

Senparc 2年前

你看的是哪个sln文件?

0

gis008 2年前

是的

0

Senparc 2年前

所有的Senparc.开头的dll都是最新的正式版吗?

0

gis008 2年前

和DEMO几乎一样的。

0

Senparc 2年前

应该还是有重要的启动代码没有执行

0

gis008 2年前

我拿GIT上的源码来跟踪,是Senparc.Weixin中ContainerCacheStrategyFactory.cs中
var containerCacheStrategy = CacheStrategyFactory.GetExtensionCacheStrategyInstance(ContainerCacheStrategyDomain.Instance)
                                           as IContainerCacheStrategy
这边出错了。

0

gis008 2年前

先谢了。看了很多遍了,就是没发现。

0

Senparc 2年前

应该还是少代码了,您再比较一下,我等下到电脑边上看一下。

0

gis008 2年前

用Senparc.CO2NET.Cache.Redis验证REDIS里面的TOKEN是否有效都是可以用的。
key = string.Format(ConstHelper.TokenRedisKey, token);
           if (!string.IsNullOrEmpty(token))
           {
               var cacheStrategy = CacheStrategyFactory.GetObjectCacheStrategyInstance();
               if (cacheStrategy.CheckExistedAsync(key).Result)
                   flag = true;
               if (flag)
               {
                   flag = TokenHelper.ValidateToken(token, out userName);
                   var obj = cacheStrategy.GetAsync<string>(key).Result;
                   string redisUserName = obj != null ? obj.ToString() : string.Empty;
                   if (redisUserName == userName)
                       flag = true;
               }
           }

0

gis008 2年前

有设置的啊。之前没调用公众号的API,用Senparc.CO2NET里的REDIS都是可以用的。

0

Senparc 2年前

参考demo里面,用redis的话要设置连接字符串

0

gis008 2年前

web.config要改啥内容?

0

Senparc 2年前

您先都用demo的方式从web.config设置然后注册试试看

0

gis008 2年前

protected void Application_Start()
       {
           AreaRegistration.RegisterAllAreas();

           GlobalConfiguration.Configure(WebApiConfig.Register);
           FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
           RouteConfig.RegisterRoutes(RouteTable.Routes);
           BundleConfig.RegisterBundles(BundleTable.Bundles);


           string redisConfigurationStr = ConstHelper.Cache_Redis_Configuration
               , cacheNamespace = ConstHelper.RedisCacheNamespace;

           //设置全局 Debug 状态
           var isGLobalDebug = false;
           var senparcSetting = SenparcSetting.BuildFromWebConfig(isGLobalDebug);//new Senparc.CO2NET.SenparcSetting();
           //senparcSetting.Cache_Redis_Configuration = redisConfigurationStr;
           //senparcSetting.DefaultCacheNamespace = cacheNamespace;

           //微信全局注册,必须!!
           //IRegisterService register
           var register = RegisterService.Start(senparcSetting).UseSenparcGlobal();
           Senparc.CO2NET.Cache.Redis.Register.SetConfigurationOption(redisConfigurationStr);
           Senparc.CO2NET.Cache.Redis.Register.UseKeyValueRedisNow();//键值对缓存策略(推荐)

           //设置微信 Debug 状态
           var isWeixinDebug = false;
           //全局设置参数,将被储存到 Senparc.Weixin.Config.SenparcWeixinSetting
           var senparcWeixinSetting = SenparcWeixinSetting.BuildFromWebConfig(isWeixinDebug);

           register.UseSenparcWeixin(senparcWeixinSetting, senparcSetting);
           //.RegisterMpAccount(senparcWeixinSetting, "公众号");

           //RedisManager.ConfigurationOption = redisConnStr;
           //CacheStrategyFactory.RegisterObjectCacheStrategy(() => RedisObjectCacheStrategy.Instance);//k-v
           //CacheStrategyFactory.RegisterObjectCacheStrategy(() => RedisHashSetObjectCacheStrategy.Instance);//hashset
       }

0

Senparc 2年前

看一下app.开头的代码

0

gis008 2年前

string redisConfigurationStr = ConstHelper.Cache_Redis_Configuration
               , cacheNamespace = ConstHelper.RedisCacheNamespace;

           //设置全局 Debug 状态
           var isGLobalDebug = false;
           var senparcSetting = SenparcSetting.BuildFromWebConfig(isGLobalDebug);//new Senparc.CO2NET.SenparcSetting();
           senparcSetting.Cache_Redis_Configuration = redisConfigurationStr;
           senparcSetting.DefaultCacheNamespace = cacheNamespace;

           //微信全局注册,必须!!
           //IRegisterService register
           var register = RegisterService.Start(senparcSetting).UseSenparcGlobal();
           Senparc.CO2NET.Cache.Redis.Register.SetConfigurationOption(redisConfigurationStr);
           Senparc.CO2NET.Cache.Redis.Register.UseKeyValueRedisNow();//键值对缓存策略(推荐)

           //设置微信 Debug 状态
           var isWeixinDebug = false;
           //全局设置参数,将被储存到 Senparc.Weixin.Config.SenparcWeixinSetting
           var senparcWeixinSetting = SenparcWeixinSetting.BuildFromWebConfig(isWeixinDebug);

           register.UseSenparcWeixin(senparcWeixinSetting, senparcSetting);

0

Senparc 2年前

缓存需要另外的代码注册,您看一下dwmi其他代码,严格按照其顺序执行。


热门话题 更多 >>

TenPayV3.Unifiedorder 调用统一订单接口 签名错误

sy87468118 14 个回复 • 查看 267 次 • 61天前

.net 5微信退款报错

magiboy 13 个回复 • 查看 531 次 • 73天前

appsettings.json取不到数据--centos7

yintingji 12 个回复 • 查看 532 次 • 83天前

小程序客服消息能否自动回复链接消息

LXL.WxDeveloper 11 个回复 • 查看 222 次 • 35天前

关于微信小程序发送订阅消息

LXL.WxDeveloper 8 个回复 • 查看 291 次 • 64天前

书本P137中的AccessToken是如何获得的?

senparclsx 6 个回复 • 查看 249 次 • 135天前

验证回掉失败

pcm77 5 个回复 • 查看 199 次 • 127天前

TenPay.V3.TenPayV3.Refund退款BUG

zhuyuelee 5 个回复 • 查看 246 次 • 49天前

找不到[微信营销]标签

senparclsx 4 个回复 • 查看 242 次 • 148天前

UniformSend 小程序统一消息发布bug

hanhedy 3 个回复 • 查看 217 次 • 160天前

请帮助解决以下问题

senparclsx 3 个回复 • 查看 157 次 • 170天前

个人信息
QQ群
  • 1群:300313885 (2000人群 已满)
  • 2群:293958349 (1000人群 已满)
  • 3群:342319110 (2000人群 已满)
  • 4群:372212092 (500人群 已满)
  • 5群:377815480 Senparc.Weixin.MP SDK 5群
  • 6群:425898825 (1000人群 已满)
  • 7群:482942254 (500人群 已满)
  • 8群:106230270 (500人群 已满)
  • 9群:539061281 (500人群 已满)
  • 10群(分布式缓存):246860933 Senparc.Weixin.Cache SDK 10群
  • 11群:553198593 (500人群 已满)
  • 12群(微信小程序):108830388 Senparc微信小程序 12群
  • 13群(开放平台):183424136 (500人群 已满)
  • 14群(视频学员):588231256 Senparc.Weixin SDK 14群
  • 15群(公众号/综合):289181996 (500人群 已满)
  • 16群(开放平台):860626938 (500人群 已满)
  • 17群(开放平台):770615466 [17群 开放平台]SenparcSDK
  • NCF 技术交流群:147054579 SCF 开发交流群
微信开发宝典:《微信开发深度解析》

由 Senparc.Weixin SDK 作者耗时两年完成的微信开发图书《微信开发深度解析:公众号、小程序高效开发秘籍》已经出版!

历经2年精心雕琢,难得的“理论 + 实战案例 + 趟坑经验”总结,
从需求分析、策划,到账号申请、验证,再到全面的 API 及开发工具,
覆盖所有开发微信公众号(含订阅号、服务号和小程序)所需关键技能!

视频教程:《微信公众号+小程序快速开发》

由盛派课堂(盛派旗下独立教育品牌)制作,《微信开发深度解析》作者苏震巍先生主讲的《微信公众号+小程序快速开发》视频课程开课啦!

课程采用“理论+实战”的教学形式,结合部分《微信开发深度解析》内容,独立于书本,包含了更多的操作演示和案例展示,帮助大家从多个维度学习微信开发以及.NET开发过程中的诸多技巧。
课程包含两大部分:
1. 微信开发基础技能
2. 公众号及小程序案例实战
共计60课时,配有番外篇,目前视频已在网易云课堂上线。