There is a bug in TableColumnFilterRule.cs ( SqlPackageFilter=KeepTableColumns(Employees) ). When generated change script starts from PredicateSetStatement (i.e. SET ANSI_NULLS ) instead of AlterTableDropTableElementStatement (as the current code expects), the filter does not remove DROP COLUMN statements. As a result, the columns getting dropped when the expected behavior is that they will remain unmodified.
There is a bug in TableColumnFilterRule.cs ( SqlPackageFilter=KeepTableColumns(Employees) ). When generated change script starts from PredicateSetStatement (i.e. SET ANSI_NULLS ) instead of AlterTableDropTableElementStatement (as the current code expects), the filter does not remove DROP COLUMN statements. As a result, the columns getting dropped when the expected behavior is that they will remain unmodified.