private void ParseColumn(TableMetaData metaTable, Column column) { var meta_col = new ColumnMetaData(); meta_col.Name = column.Name; meta_col.DbType = SQLMetaDataHelper.MapCsharpType(column.DataType.ToString()); meta_col.Comment = column.ExtendedProperties["MS_Description"]?.Value.ToString().Trim(); meta_col.IsPrimaryKey = column.InPrimaryKey; meta_col.IsIdentity = column.Identity; meta_col.Nullable = column.Nullable; meta_col.HasDefaultValue = column.DefaultConstraint != null && !string.IsNullOrWhiteSpace(column.DefaultConstraint.Text); metaTable.Columns.Add(meta_col); // 主键 if (column.InPrimaryKey) { metaTable.PrimaryKey.Add(meta_col); metaTable.ExistPredicate.Add(meta_col); metaTable.WherePredicate.Add(meta_col); } // 标识 if (column.Identity) { metaTable.Identity = meta_col; } }