private void editForeignKeyToolStripMenuItem_Click(object sender, EventArgs e) { if (listBoxColumns.SelectedIndex > -1) { var column = (Column)listBoxColumns.SelectedItem; var table = (Table)listBoxTables.SelectedItem; var schema = (Schema)listBoxSchemas.SelectedItem; var foreignKey = schema.ForeignKeys.FirstOrDefault(x => x.Columns.Any(c => c.ForeignKeyColumnName.ToUpper() == column.Name.ToUpper() && c.ForeignKeyTableName.ToUpper() == table.Name.ToUpper() && c.ForeignKeySchemaName.ToUpper() == schema.Name.ToUpper() )); if (foreignKey != null) { FormForeignKeyCreator keyCreator = new FormForeignKeyCreator(schema, foreignKey); keyCreator.ShowDialog(); if (keyCreator.Saved) { schema.DeleteForeignKey(table.Name, column.Name); schema.AddForeignKey(keyCreator.ForeignKey); } this.loadColumns(table.Columns); } } }
private void createForeignKeyToolStripMenuItem_Click(object sender, EventArgs e) { if (listBoxColumns.SelectedIndex > -1) { var column = (Column)listBoxColumns.SelectedItem; var table = (Table)listBoxTables.SelectedItem; var schema = (Schema)listBoxSchemas.SelectedItem; FormForeignKeyCreator keyCreator = new FormForeignKeyCreator(schema, table.Name, column.Name); keyCreator.ShowDialog(); if (keyCreator.Saved) { schema.AddForeignKey(keyCreator.ForeignKey); table.AddConstraint(keyCreator.Constraint); } this.loadColumns(table.Columns); } }