using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data; namespace Ant.ORM { public class TableColumn { public TableColumn() { } private Dictionary _fieldMeteDatas = new Dictionary();//主表列集合 /// /// 列集合 /// private Dictionary FieldMeteDatas { get { return _fieldMeteDatas; } set { _fieldMeteDatas = value; } } public DataFieldMetaData ColumnMetaData { get; set; } /// /// 列名 /// public string ColumnName { get { return ColumnMetaData.ColumnName; } } /// /// 重写列名 /// public string OverColumnName { get; set; } /// /// 列的类型 /// public DbType ColumnType { get { return ColumnMetaData.ColumnType; } } /// /// 操作符 /// public Operator Operatstr { get; set; } /// /// 表名 /// public string TableName { get; set; } /// /// 列的值 /// public object ColumnValue { get { return ColumnMetaData.DefaultValue; } } public MetaData md; /// /// 获取表列 /// /// /// /// /// public TableColumn GetTableColumn() { md.FiledMeta = MetaDataManager.GetMetaData(typeof(T));//获取实体的元数据 return this; } /// /// 获取字段 /// /// /// /// public TableColumn GetFieldColumn(string column, object obj) { //ColumnMetaData = md.FiledMeta.FieldMeteDatas[column]; //TableName = md.FiledMeta.TableName; ColumnMetaData.DefaultValue = obj; return this; } /// /// 是否相等 /// /// /// public TableColumn EqualTo(object val) { ColumnMetaData.DefaultValue = val; Operatstr = Operator.Equal; return this; } /// /// 大于 /// /// /// public TableColumn Laguage(object val) { ColumnMetaData.DefaultValue = val; Operatstr = Operator.Larger; return this; } /// /// 大于等于 /// /// /// public TableColumn LaguageEqual(object val) { ColumnMetaData.DefaultValue = val; Operatstr = Operator.EqualLarger; return this; } /// /// 小于 /// /// /// public TableColumn Small(object val) { ColumnMetaData.DefaultValue = val; Operatstr = Operator.Smaller; return this; } /// /// 小于等于 /// /// /// public TableColumn SmallEqual(object val) { ColumnMetaData.DefaultValue = val; Operatstr = Operator.EqualSmaller; return this; } /// /// In包含查询 /// /// /// public TableColumn In(object val) { ColumnMetaData.DefaultValue = val; Operatstr = Operator.In; return this; } } }