liuying
2024-05-09 f4078b75fe80f03e58af3217bf642d0de118d1c9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
using CSRedis;
using Furion;
using Microsoft.Extensions.Caching.Distributed;
using Microsoft.Extensions.Caching.Redis;
using Microsoft.Extensions.DependencyInjection;
 
namespace Admin.NET.Core.Extension;
 
/// <summary>
/// csredis扩展
/// </summary>
public static class CsRedisExtensions
{
    /// <summary>
    /// 使用缓存
    /// </summary>
    /// <param name="services"></param>
    /// <returns></returns>
    public static void UseCsRedis(this IServiceCollection services)
    {
        var redisStr = $"{App.Configuration["Cache:RedisConnectionString"]},prefix={App.Configuration["Cache:InstanceName"]}";
 
        //csredis的两种使用方式
        var csredis = new CSRedisClient(redisStr);
        services.AddSingleton(csredis);
        RedisHelper.Initialization(csredis);
 
        //基于redis初始化IDistributedCache
        services.AddSingleton<IDistributedCache>(new CSRedisCache(csredis));
    }
}