From 710ad95edabda8473fcdb34b9d8bc8eff4e98a17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A9=99=E5=AD=90?= <454313500@qq.com> Date: Tue, 18 Mar 2025 23:13:16 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E5=90=AF=E7=94=A8redis?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../YiFrameworkRbacDomainModule.cs | 19 ++++++++++++------- .../Services/TestService.cs | 6 +++--- Yi.Abp.Net8/src/Yi.Abp.Web/YiAbpWebModule.cs | 2 +- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/Yi.Abp.Net8/module/rbac/Yi.Framework.Rbac.Domain/YiFrameworkRbacDomainModule.cs b/Yi.Abp.Net8/module/rbac/Yi.Framework.Rbac.Domain/YiFrameworkRbacDomainModule.cs index cb3d4bf5..9999ffb9 100644 --- a/Yi.Abp.Net8/module/rbac/Yi.Framework.Rbac.Domain/YiFrameworkRbacDomainModule.cs +++ b/Yi.Abp.Net8/module/rbac/Yi.Framework.Rbac.Domain/YiFrameworkRbacDomainModule.cs @@ -1,5 +1,6 @@ using Medallion.Threading; using Medallion.Threading.Redis; +using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using StackExchange.Redis; using Volo.Abp.AspNetCore.SignalR; @@ -42,14 +43,18 @@ namespace Yi.Framework.Rbac.Domain //配置阿里云短信 Configure(configuration.GetSection(nameof(AliyunOptions))); - //分布式锁 - context.Services.AddSingleton(sp => + //分布式锁,需要redis + if (configuration.GetSection("Redis").GetValue("IsEnabled")) { - var connection = ConnectionMultiplexer - .Connect(configuration["Redis:Configuration"]); - return new - RedisDistributedSynchronizationProvider(connection.GetDatabase()); - }); + context.Services.AddSingleton(sp => + { + var connection = ConnectionMultiplexer + .Connect(configuration["Redis:Configuration"]); + return new + RedisDistributedSynchronizationProvider(connection.GetDatabase()); + }); + } + } } } \ No newline at end of file diff --git a/Yi.Abp.Net8/src/Yi.Abp.Application/Services/TestService.cs b/Yi.Abp.Net8/src/Yi.Abp.Application/Services/TestService.cs index 11466146..2f709936 100644 --- a/Yi.Abp.Net8/src/Yi.Abp.Application/Services/TestService.cs +++ b/Yi.Abp.Net8/src/Yi.Abp.Application/Services/TestService.cs @@ -185,12 +185,12 @@ namespace Yi.Abp.Application.Services /// /// 分布式送abp版本:abp套了一层娃。但是纯粹鸡肋,不建议使用这个 /// - public IAbpDistributedLock AbpDistributedLock { get; set; } - + public IAbpDistributedLock AbpDistributedLock => LazyServiceProvider.LazyGetService(); + /// /// 分布式锁推荐使用版本:yyds,分布式锁永远的神! /// - public IDistributedLockProvider DistributedLock { get; set; } + public IDistributedLockProvider DistributedLock => LazyServiceProvider.LazyGetService(); /// /// 分布式锁 diff --git a/Yi.Abp.Net8/src/Yi.Abp.Web/YiAbpWebModule.cs b/Yi.Abp.Net8/src/Yi.Abp.Web/YiAbpWebModule.cs index bc61c727..f0db25c3 100644 --- a/Yi.Abp.Net8/src/Yi.Abp.Web/YiAbpWebModule.cs +++ b/Yi.Abp.Net8/src/Yi.Abp.Web/YiAbpWebModule.cs @@ -204,7 +204,7 @@ namespace Yi.Abp.Web var redisConfiguration = configuration["Redis:Configuration"]; context.Services.AddHangfire(config=> { - bool.TryParse( configuration["Redis:IsEnabled"], out var redisEnabled); + var redisEnabled=configuration.GetSection("Redis").GetValue("IsEnabled"); if (redisEnabled) { var jobDb=configuration.GetSection("Redis").GetValue("JobDb");