using Microsoft.Extensions.Options; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Fuel.Infrastructure.Extension { public class RedisListOptions : IOptions { public List RedisConfigs { get; set; } public RedisListOptions Value => this; public RedisListOptions() { RedisConfigs = new List(); } /// /// 添加的redis /// /// public void TryAdd(RedisConfig redisConfig) { if (!RedisConfigs.Any(p => p.Connection == redisConfig.Connection && p.DataBase== redisConfig.DataBase)) { RedisConfigs.Add(redisConfig); } } public void Set(RedisConfig redisConfig) { if (!RedisConfigs.Any(p => p.Connection == redisConfig.Connection && p.DataBase == redisConfig.DataBase)) { RedisConfigs.Remove(redisConfig); } RedisConfigs.Add(redisConfig); } } /// /// redis config 配置 /// public class RedisConfig { /// /// url 地址 /// public string Connection { get; set; } /// /// 数据库编号 /// public int DataBase { get; set; } /// /// 链接名称 /// public string KeyName { get; set; } /// /// 缓存key 的前缀 /// public string PrefixKey { get; set; } /// /// 哨兵地址 /// public string[] Sentinels {get;set;} } }