bool ITablePart.HasChanges()
{
if (!ObjectHelper.AreEqual(this, oldFk)) return true;
if (Columns.Count != oldFk.Columns.Count) return true;
foreach (FKColumnPair fc in Columns)
{
int i = 0;
for (; i < oldFk.Columns.Count; i++)
{
FKColumnPair ofc = oldFk.Columns[i];
if (ofc.ReferencedColumn == fc.ReferencedColumn &&
ofc.Column == fc.Column) break;
}
if (i == oldFk.Columns.Count) return true;
}
return false;
}