public void StandardUsage(EndpointConfiguration endpointConfiguration, string connectionString)
    {
        #region DefaultUsage
        var gatewayConfiguration = new SqlGatewayDeduplicationConfiguration();
        gatewayConfiguration.ConnectionBuilder(
            connectionBuilder: () =>
        {
            return(new SqlConnection(connectionString));
        });

        var gatewaySettings = endpointConfiguration.Gateway(gatewayConfiguration);
        #endregion
    }
        public Task <GatewayDeduplicationConfiguration> ConfigureDeduplicationStorage(string endpointName, EndpointConfiguration configuration, RunSettings settings)
        {
            var connectionString = DatabaseUtil.GetConnectionString();

            var config = new SqlGatewayDeduplicationConfiguration
            {
                TableName = Regex.Replace(endpointName, "[^A-Za-z0-9]+", "") + "_GatewayDeduplication"
            };

            config.ConnectionBuilder(builder => new SqlConnection(connectionString));

            return(Task.FromResult <GatewayDeduplicationConfiguration>(config));
        }
    public void SchemaAndTableName(EndpointConfiguration endpointConfiguration, string connectionString)
    {
        #region CustomizeSchemaAndTableName
        var gatewayConfiguration = new SqlGatewayDeduplicationConfiguration();
        gatewayConfiguration.Schema    = "custom_schema";
        gatewayConfiguration.TableName = "CustomTableName";
        gatewayConfiguration.ConnectionBuilder(
            connectionBuilder: () =>
        {
            return(new SqlConnection(connectionString));
        });

        var gatewaySettings = endpointConfiguration.Gateway(gatewayConfiguration);
        #endregion
    }