Example #1
0
        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);
        }
Example #4
0
        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;
            }
        }