internal static bool AutoGenerated(ForeignKeyConstraint fk, bool checkRelation) {
// for now we use just this simple logic for the columns.
DataRelation rel = fk.FindParentRelation();
if (checkRelation) {
if (rel == null)
return false; // otherwise roundtrip will create column
if (!AutoGenerated(rel))
return false;
if (rel.RelationName != fk.ConstraintName)
return false;
}
if (fk.ExtendedProperties.Count > 0)
return false;
if (fk.AcceptRejectRule != AcceptRejectRule.None)
return false;
if (fk.DeleteRule != Rule.Cascade)
return false;
if (fk.DeleteRule != Rule.Cascade)
return false;
if (fk.RelatedColumnsReference.Length !=1)
return false;
return AutoGenerated(fk.RelatedColumnsReference[0]);
}