public TableColumn?VisitByteArray(TempTableBuilderCtx arg, bool?isNull, int?length, bool fix) { var arrayTableColumn = EnsureColumnType <NullableByteArrayTableColumn>(arg); if (ReferenceEquals(arrayTableColumn, null)) { return(CreateCol(length)); } else { if (arrayTableColumn.SqlType.GetSize().HasValue&& (!length.HasValue || length.Value > arrayTableColumn.SqlType.GetSize())) { return(CreateCol(length)); } return(arrayTableColumn); } NullableByteArrayTableColumn CreateCol(int?len) { return(new NullableByteArrayTableColumn(this.Alias, arg.ColumnName, this, fix ? new ExprTypeFixSizeByteArray(length.AssertNotNull("Length cannot be null for fixed size array")) : new ExprTypeByteArray(length), arg.PrimaryKey ? ColumnMeta.PrimaryKey() : null)); } }
public TableFk3AB(Alias alias) : base(schema : "dbo", name : "Fk3AB", alias : alias) { this.Id = this.CreateInt32Column("Id", ColumnMeta.PrimaryKey()); this.Parent0 = this.CreateInt32Column("Parent0", ColumnMeta.ForeignKey <TableFk0>(t => t.Id)); this.ParentA = this.CreateInt32Column("ParentA", ColumnMeta.ForeignKey <TableFk1A>(t => t.Id).ForeignKey <TableFk2AB>(t => t.ParentA)); this.ParentB = this.CreateInt32Column("ParentB", ColumnMeta.ForeignKey <TableFk1B>(t => t.Id).ForeignKey <TableFk2AB>(t => t.ParentB)); }
internal static void gridView_CellEditorInitialize(TableMeta tableMeta, ASPxGridViewEditorEventArgs e) { var columnMeta = tableMeta.Columns.SingleOrDefault(c => c.Name.Equals(e.Column.FieldName, System.StringComparison.InvariantCultureIgnoreCase)); if (columnMeta == null) { throw new ArgumentException(string.Format("Column meta entry not found for column ", e.Column.FieldName)); } var sqlDataSource = e.Editor.DataSource as SqlDataSource; ColumnMeta filterColumnMeta = null; if (!string.IsNullOrEmpty(columnMeta.FilterColumn)) { filterColumnMeta = columnMeta.ReferenceTable.Columns.SingleOrDefault(c => c.Name.Equals(columnMeta.FilterColumn)); } if (filterColumnMeta != null) { sqlDataSource.SelectCommand = SqlHelper.AddWhereConditionIfNotExists(sqlDataSource.SelectCommand, filterColumnMeta.Name); bool found = false; foreach (Parameter parameter in sqlDataSource.SelectParameters) { if (parameter.Name.Equals(filterColumnMeta.Name, StringComparison.InvariantCultureIgnoreCase)) { found = true; break; } } if (!found) { sqlDataSource.SelectParameters.Add(new Parameter(filterColumnMeta.Name, filterColumnMeta.DataType, e.KeyValue.ToString())); } } e.Editor.DataBind(); }
private ColumnMeta BuildColumnMeta(PropertyInfo pi, Type tp) { ColumnMeta colMeta = null; if (TypeInterrogator.IsNumericType(tp)) { colMeta = new ColumnMeta(pi.Name, DataTypeEnum.NUMERIC, new SqlsvrDTDictionary()); colMeta.DataType.Precision = 10; colMeta.DataType.Scale = 2; } else if (TypeInterrogator.IsBoolType(tp)) { colMeta = new ColumnMeta(pi.Name, DataTypeEnum.Bit, new SqlsvrDTDictionary()); } else if (TypeInterrogator.IsDateTimeType(tp)) { colMeta = new ColumnMeta(pi.Name, DataTypeEnum.DATETIME, new SqlsvrDTDictionary()); } else if (TypeInterrogator.IsEnumType(tp)) { colMeta = new ColumnMeta(pi.Name, DataTypeEnum.Int32, new SqlsvrDTDictionary()); //colMeta.DataType.Scale = 2; } else if (TypeInterrogator.IsStringType(tp)) { colMeta = new ColumnMeta(pi.Name, DataTypeEnum.AnsiString, new SqlsvrDTDictionary()); colMeta.DataType.StringLength = 256; } return(colMeta); }
void masterGrid_CellEditorInitialize(object sender, ASPxGridViewEditorEventArgs e) { //arf GridViewHelper.gridView_CellEditorInitialize(tableMeta, e); var gridView = (sender as ASPxGridView); var columnMeta = tableMeta.Columns.SingleOrDefault(c => c.Name.Equals(e.Column.FieldName, System.StringComparison.InvariantCultureIgnoreCase)); if (columnMeta == null) { throw new ArgumentException(string.Format("Column meta entry not found for column ", e.Column.FieldName)); } var sqlDataSource = e.Editor.DataSource as SqlDataSource; ColumnMeta filterColumnMeta = null; if (!string.IsNullOrEmpty(columnMeta.FilterColumn)) { filterColumnMeta = columnMeta.ReferenceTable.Columns.SingleOrDefault(c => c.Name.Equals(columnMeta.FilterColumn)); } if (filterColumnMeta != null) { sqlDataSource.SelectCommand += string.Format("WHERE {0} = @{0}", filterColumnMeta.Name); sqlDataSource.SelectParameters.Add(filterColumnMeta.Name, e.KeyValue.ToString()); } e.Editor.DataBind(); }
public static bool Equals(ColumnMeta left, ColumnMeta right, out string column) { if (left.FieldFullName != right.FieldFullName) { column = nameof(FieldFullName); return(false); } if (left.Constraint != right.Constraint) { column = nameof(Constraint); return(false); } if (left.TypeSpec != right.TypeSpec) { column = nameof(TypeSpec); return(false); } if (left.Tag != right.Tag) { column = nameof(Tag); return(false); } column = null; return(true); }
public HtmlString RenderOptionGroup(string label, bool isSelectedDate, SelectOption selectOption) { StringBuilder sbHtml = new(); List <ColumnMeta> columnMetas = isSelectedDate ? columnMetas2 : columnMetas1; sbHtml.Append("<optgroup label='").Append(HttpUtility.HtmlEncode(label)).AppendLine("'>"); for (int i = 0, lastIdx = columnMetas.Count - 1; i <= lastIdx; i++) { ColumnMeta columnMeta = columnMetas[i]; bool isSelected = selectOption == SelectOption.First && i == 0 || selectOption == SelectOption.Last && i == lastIdx; string optionValue = columnMeta.ShortTime; string optionText = columnMeta.ShortTime; if (!isSelectedDate) { optionValue += "-1d"; optionText += PluginPhrases.MinusOneDay; } sbHtml.Append("<option value='").Append(optionValue) .Append("' data-time='").Append(columnMeta.UtcTime) .Append(isSelected ? "' selected>" : "'>") .Append(optionText).AppendLine("</option>"); } sbHtml.AppendLine("</optgroup>"); return(new HtmlString(sbHtml.ToString())); }
public TableItOrder(Alias alias) : base(schema : "dbo", name : "ItOrder", alias : alias) { this.OrderId = this.CreateInt32Column("OrderId", ColumnMeta.PrimaryKey().Identity()); this.CustomerId = this.CreateInt32Column("CustomerId", ColumnMeta.ForeignKey <TableItCustomer>(t => t.CustomerId)); this.DateCreated = this.CreateDateTimeColumn("DateCreated", false, ColumnMeta.DefaultValue(SqQueryBuilder.GetUtcDate())); this.Notes = this.CreateNullableStringColumn(name: "Notes", size: 100, isUnicode: true, isText: false, columnMeta: null); }
public TableColumn VisitString(TempTableBuilderCtx arg, bool?isNull, int?size, bool fix) { var stringTableColumn = EnsureColumnType <NullableStringTableColumn>(arg); if (ReferenceEquals(stringTableColumn, null)) { return(CreateString(size)); } else { if (stringTableColumn.SqlType.GetSize().HasValue&& (!size.HasValue || size.Value > stringTableColumn.SqlType.GetSize())) { return(CreateString(size)); } return(stringTableColumn); } NullableStringTableColumn CreateString(int?len) { return(new NullableStringTableColumn(this.Alias, arg.ColumnName, this, fix ? new ExprTypeFixSizeString(len.AssertNotNull("Length cannot be null for fixed size string"), true) : new ExprTypeString(len, true, false), arg.PrimaryKey ? ColumnMeta.PrimaryKey() : null)); } }
public void ColumnMeta_ToString_should_match_name_datatype_property() { var columnMeta = new ColumnMeta(); columnMeta.Name = "Id"; columnMeta.DataType = TypeCode.Int32; Assert.AreEqual(columnMeta.ToString(), "Id: Int32"); }
public TableItCustomer(Alias alias) : base(schema : "dbo", name : "ItCustomer", alias : alias) { this.CustomerId = this.CreateInt32Column("CustomerId", ColumnMeta.PrimaryKey().Identity()); this.UserId = this.CreateNullableInt32Column("UserId", ColumnMeta.ForeignKey <TableItUser>(t => t.UserId)); this.CompanyId = this.CreateNullableInt32Column("CompanyId", ColumnMeta.ForeignKey <TableItCompany>(t => t.CompanyId)); this.AddUniqueIndex(this.UserId, this.CompanyId); this.AddUniqueIndex(this.CompanyId, this.UserId); }
/// <summary> /// 设置数据文档的表 /// </summary> /// <param name="document">文档</param> /// <param name="table">当前表</param> /// <param name="no">当前表编号,从1开始</param> public static void SetTableWord(XWPFDocument document, TableMeta table, Int32 no) { //表名 XWPFParagraph p = document.CreateParagraph(); p.Alignment = ParagraphAlignment.LEFT; XWPFRun r = p.CreateRun(); r.SetText($"{no}.{table.TableName}"); r.FontSize = 14; r.IsBold = true; if (!string.IsNullOrEmpty(table.Comment)) { //表注释 p = document.CreateParagraph(); p.Alignment = ParagraphAlignment.LEFT; r = p.CreateRun(); r.SetText(table.Comment); r.FontSize = 14; r.IsBold = true; } //表格 XWPFTable grid = document.CreateTable(table.Columns.Count + 1, 5); grid.Width = 2500; grid.SetColumnWidth(0, 256 * 2); grid.SetColumnWidth(1, 256 * 2); grid.SetColumnWidth(2, 256 * 1); grid.SetColumnWidth(3, 256 * 1); grid.SetColumnWidth(4, 256 * 4); //设置表头 XWPFTableRow row = grid.GetRow(0); row.GetCell(0).SetParagraph(SetCellText(document, grid, "字段名")); row.GetCell(1).SetParagraph(SetCellText(document, grid, "类型")); row.GetCell(2).SetParagraph(SetCellText(document, grid, "是否主键")); row.GetCell(3).SetParagraph(SetCellText(document, grid, "可为空")); row.GetCell(4).SetParagraph(SetCellText(document, grid, "说明")); for (int i = 0; i < table.Columns.Count; i++) { ColumnMeta col = table.Columns[i]; row = grid.GetRow(i + 1); row.GetCell(0).SetParagraph(SetCellText(document, grid, col.ColumnName)); row.GetCell(1).SetParagraph(SetCellText(document, grid, col.FieldTypeName)); row.GetCell(2).SetParagraph(SetCellText(document, grid, col.IsKey ? "是" : "否")); row.GetCell(3).SetParagraph(SetCellText(document, grid, col.AllowDBNull ? "是" : "否")); row.GetCell(4).SetParagraph(SetCellText(document, grid, string.IsNullOrEmpty(col.Comment)?string.Empty:col.Comment)); } }
private bool IsNullAllowed(ColumnMeta fldInfo, ref FieldError fldError) { if (!fldInfo.Nullable) { fldError.Errors.Add(ErrorType.NonNullValueExpected); return(false); } return(true); }
public void ColumnMeta_initial_condition_test() { var columnMeta = new ColumnMeta(); Assert.AreEqual(columnMeta.DataType, TypeCode.Empty); Assert.IsFalse(columnMeta.IsForeignKey); Assert.IsFalse(columnMeta.IsPrimaryKey); Assert.IsTrue(columnMeta.DisplayInGrid); }
public TableColumn?VisitXml(TempTableBuilderCtx arg, bool?isNull) { return(EnsureColumnType <NullableStringTableColumn>(arg) ?? new NullableStringTableColumn(this.Alias, arg.ColumnName, this, ExprTypeXml.Instance, arg.PrimaryKey ? ColumnMeta.PrimaryKey() : null)); }
/// <summary> /// Returns <see cref="GridViewEditDataColumn"/> instance based on meta data passed in column argument. /// </summary> /// <param name="column">An instance of <see cref="ColumnMeta"/> containing meta data of column to be created.</param> /// <param name="connectionString">Connection string to underlying database.</param> /// <returns></returns> internal static GridViewEditDataColumn AddGridViewDataColumn(ColumnMeta column, string connectionString) { GridViewEditDataColumn dataColumn = null; // As per 11 Oct 2016, the following evaluation criteria for data type and its column editor are not yet complete. // We still has some works to do to deal with picture and blob/document. (--github.com/ganagus) // --- if ((new TypeCode[] { TypeCode.String, TypeCode.Int64, TypeCode.Int32, TypeCode.Single, TypeCode.Decimal }) .Contains(column.DataType) && !column.IsForeignKey && string.IsNullOrEmpty(column.EnumTypeName)) { // regular text column, editor => text box dataColumn = AddGridViewDataTextColumn(column, dataColumn); } else if (!string.IsNullOrEmpty(column.EnumTypeName)) { // enum data type column, editor => check box dataColumn = AddGridViewEnumColumn(column, dataColumn); } // foreign key should be rendered in combo box column else if (column.IsForeignKey) { // foreign key column, it's a look up to other table, editor => combo box dataColumn = AddGridViewForeignKeyColumn(column, dataColumn, connectionString); } else if (column.DataType == TypeCode.DateTime) { // date / datetime column, editor => DevExpress date editor dataColumn = new GridViewDataDateColumn(); if (column.Name.ToLower() == "createddate" || column.Name.ToLower() == "modifieddate") { //hide createdby, createddate, modifiedby, modifieddate from edit form //dataColumn.EditFormSettings.Visible = DevExpress.Utils.DefaultBoolean.False; } } else if (column.DataType == TypeCode.Boolean) { // boolean column, editor => check box dataColumn = new GridViewDataCheckColumn(); } else { // other data type, default to text box dataColumn = new GridViewDataTextColumn(); } if (column.IsIdentity) { dataColumn.EditFormSettings.Visible = DevExpress.Utils.DefaultBoolean.False; } dataColumn.FieldName = column.Name; dataColumn.Caption = column.Caption; dataColumn.VisibleIndex = column.OrderNo; return(dataColumn); }
public TableCompany(Alias alias) : base("dbo", "Company", alias) { this.CompanyId = this.CreateInt32Column(nameof(this.CompanyId), ColumnMeta.PrimaryKey().Identity()); this.CompanyName = this.CreateStringColumn(nameof(this.CompanyName), 250); this.Version = this.CreateInt32Column("Version", ColumnMeta.DefaultValue(0)); this.ModifiedAt = this.CreateDateTimeColumn("ModifiedAt", columnMeta: ColumnMeta.DefaultValue(SqQueryBuilder.GetUtcDate())); }
public TableFavoriteFilterItem(Alias alias = default) : base("dbo", "FavoriteFilterItem", alias) { this.FavoriteFilterId = CreateInt32Column(nameof(this.FavoriteFilterId), ColumnMeta.ForeignKey <TableFavoriteFilter>(t => t.FavoriteFilterId)); this.Id = CreateInt32Column(nameof(Id)); this.ParentId = CreateInt32Column(nameof(ParentId)); this.ArrayIndex = CreateNullableInt32Column(nameof(ArrayIndex)); this.IsTypeTag = CreateBooleanColumn(nameof(IsTypeTag)); this.Tag = CreateStringColumn(nameof(Tag), 255); this.Value = CreateNullableStringColumn(nameof(Value), null); }
public TableCustomer(Alias alias) : base("dbo", "Customer", alias) { this.CustomerId = this.CreateInt32Column(nameof(this.CustomerId), ColumnMeta.PrimaryKey().Identity()); this.UserId = this.CreateNullableInt32Column(nameof(this.UserId), ColumnMeta.ForeignKey <TableUser>(u => u.UserId)); this.CompanyId = this.CreateNullableInt32Column(nameof(this.CompanyId), ColumnMeta.ForeignKey <TableCompany>(u => u.CompanyId)); //Indexes this.AddUniqueIndex(this.UserId, this.CompanyId); this.AddUniqueIndex(this.CompanyId, this.UserId); }
public ColumnMetaCollection GetTableSchema(string table) { Dictionary <string, string> comments = GetColumnComment(table); ColumnMetaCollection metas = new ColumnMetaCollection(); MySqlConnection connection = new MySqlConnection(this.ConnectionString); connection.Open(); MySqlCommand cmd = new MySqlCommand("select * from " + table + " limit 0,1", connection); using (MySqlDataReader ddr = cmd.ExecuteReader(CommandBehavior.KeyInfo | CommandBehavior.CloseConnection)) { if (ddr != null && !ddr.IsClosed) { //得元数据 DataTable dt = ddr.GetSchemaTable(); for (int i = 0, len = dt.Rows.Count; i < len; i++) { ColumnMeta columnMeta = new ColumnMeta(); columnMeta.ColumnName = dt.Rows[i][0].ToString(); columnMeta.ColumnOridinal = TypeConverter.ObjectToInt(dt.Rows[i][1], 0); columnMeta.ColumnSize = TypeConverter.ObjectToInt(dt.Rows[i][2], 4); columnMeta.IsUnique = TypeConverter.ObjectToBool(dt.Rows[i][5], false); columnMeta.IsKey = TypeConverter.ObjectToBool(dt.Rows[i][6], false); columnMeta.FieldType = (Type)dt.Rows[i][11]; columnMeta.FieldTypeName = columnMeta.FieldType.Name; columnMeta.AllowDBNull = TypeConverter.ObjectToBool(dt.Rows[i][12], true); if (comments.ContainsKey(columnMeta.ColumnName)) { columnMeta.Comment = comments[columnMeta.ColumnName]; if (!string.IsNullOrEmpty(columnMeta.Comment)) { columnMeta.Comment = columnMeta.Comment.Replace("\r", "").Replace("\n", ""); } } if (dt.Rows[i][0].ToString().IndexOf(" ") > -1) { continue; } metas.Add(columnMeta); } } } connection.Close(); return(metas); }
public User(Alias alias) : base("dbo", "user", alias) { this.UserId = this.CreateInt32Column("UserId", ColumnMeta.Identity()); this.FirstName = this.CreateStringColumn("FirstName", 255); this.LastName = this.CreateStringColumn("LastName", 255); this.Email = this.CreateStringColumn("Email", 255); this.RegDate = this.CreateDateTimeColumn("RegDate"); this.Version = this.CreateInt32Column("Version"); this.Created = this.CreateDateTimeColumn("Created"); this.Modified = this.CreateDateTimeColumn("Modified"); }
public PersistanceColumnInfo(EntityPropertyMeta propertyMeta, ColumnMeta columnMeta, PersistanceTableInfo table) { _propertyMeta = propertyMeta; _columnMeta = columnMeta; this.Table = table; this.DataType = propertyMeta.PropertyType; this.IsIdentity = columnMeta.IsIdentity; this.IsPrimaryKey = columnMeta.IsPrimaryKey; this.Property = propertyMeta.ManagedProperty as IProperty; }
public TableItCompany(Alias alias) : base(schema : "dbo", name : "ItCompany", alias : alias) { this.CompanyId = this.CreateInt32Column("CompanyId", ColumnMeta.PrimaryKey().Identity()); this.ExternalId = this.CreateGuidColumn("ExternalId", null); this.CompanyName = this.CreateStringColumn(name: "CompanyName", size: 250, isUnicode: false, isText: false, columnMeta: null); this.Version = this.CreateInt32Column("Version", null); this.Created = this.CreateDateTimeColumn("Created", false, null); this.Modified = this.CreateDateTimeColumn("Modified", false, null); this.AddUniqueIndex(this.ExternalId); this.AddIndex(this.CompanyName); }
public TableUser(Alias alias) : base("dbo", "User", alias) { this.UserId = this.CreateInt32Column("UserId", ColumnMeta.PrimaryKey().Identity()); this.FirstName = this.CreateStringColumn("FirstName", size: 255, isUnicode: true); this.LastName = this.CreateStringColumn("LastName", size: 255, isUnicode: true); this.Version = this.CreateInt32Column("Version", ColumnMeta.DefaultValue(0)); this.ModifiedAt = this.CreateDateTimeColumn("ModifiedAt", columnMeta: ColumnMeta.DefaultValue(SqQueryBuilder.GetUtcDate())); }
public ColumnMetaCollection GetTableSchema(string table) { ColumnMetaCollection metas = new ColumnMetaCollection(); SqlConnection connection = new SqlConnection(this.ConnectionString); connection.Open(); SqlCommand cmd = new SqlCommand("select * from " + table, connection); using (SqlDataReader ddr = cmd.ExecuteReader(CommandBehavior.KeyInfo)) { if (ddr != null && !ddr.IsClosed) { //得元数据 DataTable dt = ddr.GetSchemaTable(); //StringBuilder builder = new StringBuilder(); for (int i = 0, len = dt.Rows.Count; i < len; i++) { //for (int offset = 0; offset < dt.Columns.Count; offset++) //{ // builder.AppendLine(dt.Columns[offset].ColumnName+"=>(index:"+offset+")=>"+dt.Rows[i][offset]); //} ColumnMeta columnMeta = new ColumnMeta(); columnMeta.ColumnName = dt.Rows[i][0].ToString(); columnMeta.ColumnOridinal = TypeConverter.ObjectToInt(dt.Rows[i][1], 0); columnMeta.ColumnSize = TypeConverter.ObjectToInt(dt.Rows[i][2], 4); columnMeta.IsUnique = TypeConverter.ObjectToBool(dt.Rows[i][5], false); columnMeta.IsKey = TypeConverter.ObjectToBool(dt.Rows[i][6], false); columnMeta.FieldTypeName = ((Type)dt.Rows[i][12]).Name; columnMeta.FieldType = (Type)dt.Rows[i][12]; columnMeta.AllowDBNull = TypeConverter.ObjectToBool(dt.Rows[i][13], true); if (dt.Rows[i][0].ToString().IndexOf(" ") > -1) { continue; } metas.Add(columnMeta); } //File.WriteAllText("d:\\struct.txt", builder.ToString()); } } return(metas); }
private bool HandleNullValue(ColumnMeta fldInfo, ref object colValue, ref FieldError fldError) { if (!IsNullAllowed(fldInfo, ref fldError)) { return(false); } else { colValue = null; return(true); } }
protected TableMeta BuildTable(TableDef tableDefTmp, ref ArrayList indexList, ref ArrayList primaryKeyList, ref ArrayList uniqkeyList, ref ArrayList foreignKeyList, ref StringBuilder strRowDataSql, ref ArrayList colAlterList) { DDLActionEnum tblAction = ValidateVersion(tableDefTmp); if (tblAction == DDLActionEnum.NONE) // not in range! { return(null); } TableMeta tableMetaTmp = new TableMeta(tableDefTmp.Name, _context); ColumnCollection columns = tableDefTmp.Columns; foreach (Column col in columns) { ColumnMeta colMeta = new ColumnMeta(col.ColumnName, col.DataType, _dtMap); colMeta.Default = col.ExplicitDefaultValue; colMeta.Nullable = col.IsNullable; // more... colMeta.DataType.StringLength = col.MaxStringLength; if (tblAction == DDLActionEnum.MODIFY) { DDLActionEnum colAlterAction = ValidateVersion(col); if (colAlterAction != DDLActionEnum.NONE) { ColumnAlter colAlterTmp = new ColumnAlter(tableMetaTmp, colMeta); colAlterTmp.AlterAction = (int)colAlterAction; colAlterList.Add(colAlterTmp); } } tableMetaTmp.ColMetaList.Add(colMeta); } BuildIndexAndConstraints(tableDefTmp, tableMetaTmp, ref indexList, ref primaryKeyList, ref uniqkeyList, ref foreignKeyList); strRowDataSql.Append(TableRowSQLBuilder.BuildInsertLine(tableDefTmp.TableRows, tableMetaTmp, _LowVersion, _HighVersion)); if (tblAction == DDLActionEnum.MODIFY) // do not build a new table { tableMetaTmp = null; } return(tableMetaTmp); }
/// <summary> /// Renders a combo box grid view column representing enumeration values. /// TODO: this code still does not work, need more effort. (github.com/ganagus). /// </summary> /// <param name="column">Meta data about column, an instance of <see cref="ColumnMeta"/>.</param> /// <param name="dataColumn">An instance of <see cref="GridViewEditDataColumn"/>.</param> /// <returns>An instance of <see cref="GridViewDataComboBoxColumn"/>.</returns> private static GridViewEditDataColumn AddGridViewEnumColumn(ColumnMeta column, GridViewEditDataColumn dataColumn) { var enumType = Type.GetType(column.EnumTypeName); if (enumType.IsEnum) { var comboBoxColumn = new GridViewDataComboBoxColumn(); comboBoxColumn.PropertiesComboBox.ValueType = enumType; comboBoxColumn.PropertiesComboBox.DataSource = Enum.GetValues(enumType); dataColumn = comboBoxColumn; } return(dataColumn); }
private ColumnMeta ToColumnMeta(Guid id, ColumnDTO cm) { var result = new ColumnMeta { Id = Guid.NewGuid(), Text = cm.ColumnMetaDTO.Text, ValueText = cm.ColumnMetaDTO.ValueText, IsRequired = cm.ColumnMetaDTO.IsRequired, OrderId = cm.ColumnMetaDTO.OrderId, ColumnBlockId = id }; return(result); }
private bool CheckMaxSize(ColumnMeta fldInfo, string stringValueConverted, ref FieldError fldError) { if (string.IsNullOrEmpty(stringValueConverted)) { return(true); } if (stringValueConverted.Length > fldInfo.DataType.StringLength) { fldError.Errors.Add(ErrorType.ExceedsColumnSize); return(false); } return(true); }
protected PlanPart() { Columns = new ColumnMeta[0]; Children = new PlanPart[0]; }