/// <summary>
        /// Adds a redis configuration with the given <paramref name="configurationKey"/>.
        /// </summary>
        /// <param name="part">The builder instance.</param>
        /// <param name="configurationKey">
        /// The configuration key which can be used to refernce this configuration by a redis cache handle or backplate.
        /// </param>
        /// <param name="configuration">The redis configuration object.</param>
        /// <returns>The configuration builder.</returns>
        /// <exception cref="System.ArgumentNullException">If <paramref name="configuration"/> or <paramref name="configurationKey"/> are null.</exception>
        public static ConfigurationBuilderCachePart WithRedisConfiguration(this ConfigurationBuilderCachePart part, string configurationKey, Action <RedisConfigurationBuilder> configuration)
        {
            NotNull(configuration, nameof(configuration));

            var builder = new RedisConfigurationBuilder(configurationKey);

            configuration(builder);
            RedisConfigurations.AddConfiguration(builder.Build());
            return(part);
        }
        /// <summary>
        /// Adds a redis configuration.
        /// </summary>
        /// <param name="part">The part.</param>
        /// <param name="configurationKey">
        /// The configuration key which has to match with the cache handle name.
        /// </param>
        /// <param name="config">The redis configuration object.</param>
        /// <returns>The configuration builder.</returns>
        /// <exception cref="System.ArgumentNullException">If config is null.</exception>
        public static ConfigurationBuilderCachePart WithRedisConfiguration(this ConfigurationBuilderCachePart part, string configurationKey, Action <RedisConfigurationBuilder> config)
        {
            if (config == null)
            {
                throw new ArgumentNullException("config");
            }
            var builder = new RedisConfigurationBuilder(configurationKey);

            config(builder);
            RedisConfigurations.AddConfiguration(builder.Build());
            return(part);
        }