using Microsoft.Extensions.DependencyInjection;
using StackExchange.Redis;
using Znyc.CloudCar.Caching;
using Znyc.CloudCar.Configuration;
namespace Znyc.CloudCar.Core.Config
{
///
/// Redis缓存,启动服务
///
public static class RedisCacheSetup
{
public static void AddRedisCacheSetup(this IServiceCollection services)
{
if (services == null)
{
throw new ArgumentException(nameof(services));
}
services.AddSingleton(sp =>
{
string redisConfiguration = AppSettingsConstVars.RedisConfigConnectionString;
var configuration = ConfigurationOptions.Parse(redisConfiguration, true);
configuration.ResolveDns = true;
return ConnectionMultiplexer.Connect(configuration);
});
services.AddTransient();
}
}
}