void Generate(DisableChangeTrackingForTableOperation operation, IModel model, MigrationCommandListBuilder builder)
        {
            var tableName = operation.Schema == null ? operation.Name : $"{operation.Schema}.{operation.Name}";

            var sqlHelper = Dependencies.SqlGenerationHelper;

            builder
            .Append("ALTER TABLE ")
            .Append(sqlHelper.DelimitIdentifier(tableName))
            .Append(" DISABLE CHANGE_TRACKING")
            .AppendLine(sqlHelper.StatementTerminator)
            .EndCommand();
        }
        protected override void Generate(MigrationOperation operation, IModel model, MigrationCommandListBuilder builder)
        {
            Action generateAction = operation switch
            {
                EnableChangeTrackingForDatabaseOperation op => () => Generate(op, model, builder),
                DisableChangeTrackingForDatabaseOperation op => () => Generate(op, model, builder),
                EnableChangeTrackingForTableOperation op => () => Generate(op, model, builder),
                DisableChangeTrackingForTableOperation op => () => Generate(op, model, builder),
                _ => () => base.Generate(operation, model, builder)
            };

            generateAction();
        }
    }