Given:
var connectionPoolManager = services.BuildServiceProvider().GetService<IRedisConnectionPoolManager>()
?? new RedisConnectionPoolManager(connectionConfiguration);
var dbs = connectionPoolManager.GetConnections().Select(c => c.GetDatabase());
This wont work (handle returns null always - no exception thrown):
services.AddSingleton<IDistributedLockProvider>(_ => new RedisDistributedSynchronizationProvider(dbs);
But this does work:
services.AddSingleton<IDistributedLockProvider>(_ => new RedisDistributedSynchronizationProvider(dbs.First()));
Cool library btw - Thanks!