private void addButton_Click(object sender, EventArgs e) { ForeignKey key = new ForeignKey(tableNode.Table, null); if (refTable.SelectedValue != null) { key.SetName(String.Format("FK_{0}_{1}", tableNode.Table.Name, refTable.SelectedValue), true); key.ReferencedTable = refTable.SelectedValue.ToString(); } foreignKeyBindingSource.Add(key); }
private void LoadForeignKeys() { string[] restrictions = new string[4] { null, owningNode.Database, Name, null }; DataTable dt = owningNode.GetSchema("Foreign Keys", restrictions); foreach (DataRow row in dt.Rows) { ForeignKey key = new ForeignKey(this, row); ForeignKeys.Add(key); } }
void ITablePart.Saved() { if (oldFk == null) oldFk = new ForeignKey(Table); // copy over the top level properties oldFk.DeleteAction = DeleteAction; oldFk.Match = Match; oldFk.Name = Name; oldFk.ReferencedTable = ReferencedTable; oldFk.Table = Table; oldFk.UpdateAction = UpdateAction; // now we need to copy the columns oldFk.Columns.Clear(); foreach (FKColumnPair fc in Columns) { FKColumnPair old = new FKColumnPair(); old.ReferencedColumn = fc.ReferencedColumn; old.Column = fc.Column; oldFk.Columns.Add(old); } }