CfgBuilderExtensions.cs 963 B

1234567891011121314151617181920212223
  1. namespace Apq.Cfg.Redis;
  2. /// <summary>
  3. /// CfgBuilder 的 Redis 扩展方法
  4. /// </summary>
  5. public static class CfgBuilderExtensions
  6. {
  7. /// <summary>
  8. /// 添加 Redis 配置源
  9. /// </summary>
  10. /// <param name="builder">配置构建器</param>
  11. /// <param name="configure">Redis 配置选项</param>
  12. /// <param name="level">配置层级,数值越大优先级越高,默认为 <see cref="CfgSourceLevels.Redis"/> (10)</param>
  13. /// <param name="isPrimaryWriter">是否为主要写入器,默认为false</param>
  14. /// <returns>配置构建器实例,支持链式调用</returns>
  15. public static CfgBuilder AddRedis(this CfgBuilder builder, Action<RedisOptions> configure, int level = CfgSourceLevels.Redis, bool isPrimaryWriter = false)
  16. {
  17. var options = new RedisOptions();
  18. configure?.Invoke(options);
  19. builder.AddSource(new RedisCfgSource(options, level, isPrimaryWriter));
  20. return builder;
  21. }
  22. }