public RedisCache(RedisCacheConfiguration configuration, ConnectionMultiplexer connectionMultiplexer, RedisCacheProviderOptions options)
{
configuration.ThrowIfNull("configuration")
.Validate();
RegionName = configuration.RegionName;
expiration = configuration.Expiration;
slidingExpiration = configuration.SlidingExpiration;
lockTimeout = configuration.LockTimeout;
acquireLockTimeout = configuration.AcquireLockTimeout;
this.connectionMultiplexer = connectionMultiplexer.ThrowIfNull("connectionMultiplexer");
this.options = options.ThrowIfNull("options")
.ShallowCloneAndValidate();
log.DebugFormat("creating cache: regionName='{0}', expiration='{1}', lockTimeout='{2}', acquireLockTimeout='{3}'",
RegionName, expiration, lockTimeout, acquireLockTimeout
);
CacheNamespace = new RedisNamespace(options.KeyPrefix + RegionName);
}