CRL2.1更新

  1. 增加没有主键ID的抽象类,使能自义主键字段实现MODEL
    抽象类定义结构为
    /// <summary>
    /// 基类,不包含任何字段
    /// 如果有自定义主键名对象,请继承此类型
    /// </summary>
    [Serializable]
    public abstract class IModel : ICloneable
    

      

        /// <summary>
        /// 基类,包含Id, AddTime字段
        /// </summary>
        [Serializable]
        public abstract class IModelBase : IModel
        {
            /// <summary>
            /// 自增主键
            /// </summary>
            [Attribute.Field(PrimaryKey = true)]
            public int Id
            {
                get;
                set;
            }
            private DateTime addTime = DateTime.Now;
    
            /// <summary>
            /// 添加时间
            /// </summary>
            public DateTime AddTime
            {
                get { return addTime; }
                set { addTime = value; }
            }
    
        }
    

    通过此改动,使继承IModel能转化任意类型为CRL操作对象,因此老系统也能进行升级为CRL了
    对于自定义主键对象,需指定主键属性

    public class Test:CRL.IModel
    {
          [CRL.Attribute.Field(PrimaryKey=true)]//指定属性为主键
          public int Key2
         {
               get;set;
         }
    }
    

      

  2. 增加虚拟字段转换
    [CRL.Attribute.Field(VirtualField = "year(AddTime)")]
            public string Year
            {
                get;
                set;
            }
    public DateTime AddTime
    {
    get;set;
    }
    

    Year属性为虚拟字段,查询时会按year(AddTime)结果映射

  3. 增加属性覆盖
    public class ClassA : CRL.IModelBase
        {
            public string DataType
            {
                get;
                set;
            }
        }
        public class ClassB:ClassA
        {
            public new int DataType
            {
                get;
                set;
            }
        }
    

    ClassB继承ClassA,对象将按int DateType 映射

新DLL已打包在示例中,点击下载

转载于:https://www.cnblogs.com/hubro/p/4210839.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值