public List <TableForeignKeyDesignerInfo> GetForeignKeys() { List <TableForeignKeyDesignerInfo> keyDesingerInfos = new List <TableForeignKeyDesignerInfo>(); foreach (DataGridViewRow row in this.dgvForeignKeys.Rows) { TableForeignKeyDesignerInfo key = new TableForeignKeyDesignerInfo(); string keyName = row.Cells[this.colKeyName.Name].Value?.ToString(); if (!string.IsNullOrEmpty(keyName)) { TableForeignKeyDesignerInfo tag = row.Tag as TableForeignKeyDesignerInfo; key.OldName = tag?.OldName; key.Name = keyName; key.Columns = tag?.Columns; key.ReferencedTableName = DataGridViewHelper.GetCellStringValue(row, this.colReferenceTable.Name); key.UpdateCascade = DataGridViewHelper.GetCellBoolValue(row, this.colUpdateCascade.Name); key.DeleteCascade = DataGridViewHelper.GetCellBoolValue(row, this.colDeleteCascade.Name); key.Comment = DataGridViewHelper.GetCellStringValue(row, this.colComment.Name); row.Tag = key; keyDesingerInfos.Add(key); } } return(keyDesingerInfos); }
public void OnSaved() { for (int i = 0; i < this.dgvConstraints.RowCount; i++) { DataGridViewRow row = this.dgvConstraints.Rows[i]; TableForeignKeyDesignerInfo keyDesingerInfo = row.Tag as TableForeignKeyDesignerInfo; if (keyDesingerInfo != null && !string.IsNullOrEmpty(keyDesingerInfo.Name)) { keyDesingerInfo.OldName = keyDesingerInfo.Name; } } }
public static List <TableForeignKeyDesignerInfo> GetForeignKeyDesignerInfos(List <TableForeignKey> foreignKeys) { List <TableForeignKeyDesignerInfo> foreignKeyDesignerInfos = new List <TableForeignKeyDesignerInfo>(); foreach (TableForeignKey foreignKey in foreignKeys) { TableForeignKeyDesignerInfo keyDesignerInfo = new TableForeignKeyDesignerInfo(); ObjectHelper.CopyProperties(foreignKey, keyDesignerInfo); keyDesignerInfo.OldName = foreignKey.Name; keyDesignerInfo.Columns = foreignKey.Columns; foreignKeyDesignerInfos.Add(keyDesignerInfo); } return(foreignKeyDesignerInfos); }
public void SetRowColumns(IEnumerable <ForeignKeyColumn> mappings) { DataGridViewCell cell = this.dgvForeignKeys.CurrentCell; if (cell != null) { cell.Value = this.GetColumnMappingsDisplayText(mappings); TableForeignKeyDesignerInfo keyDesignerInfo = cell.OwningRow.Tag as TableForeignKeyDesignerInfo; if (keyDesignerInfo == null) { keyDesignerInfo = new TableForeignKeyDesignerInfo(); } keyDesignerInfo.Columns = mappings.ToList(); cell.OwningRow.Tag = keyDesignerInfo; } }