emit写了个DB实体转换程序

就我自己知道的,automapper是常用的,还是比较合适好用。不过我一般采用MVVM模式,其实就是简单的model名称不同而已,而这些转换器升级,扩展的很多,功能丰富,但是我用不到啊,又不能按照自己需要的扩展,

  我们常有的方法,查询数据库后转换成model.此程序采用emit实现转换。

例如:

 public class Person
    {
        public int Id { get; set; }

        [ColumnType(typeof(double))]
        public decimal? DTO { get; set; }

        [DataField("user")]
        public string Name { get; set; }
    }

  Person person = new Person();
            DataTable dt = new DataTable();
            dt.Columns.Add("Id", typeof(int));
            dt.Columns.Add("DTO", typeof(string));
            dt.Rows.Add(1, "3e-6");
            dt.Rows.Add(2, "5000");

          List<Person> lst=  dt.ToEntityList<Person>();//转model

          DataTable dd=  lst.FromEntityToTable();//转换回datatable

           IDataReader idr = null;
            List<Person> lstm=  idr.ToEntityList<Person>();//转model
            DataTable dds=   lstm.FromEntityToTableAttribute<Person>();//有属性的转换

项目地址:实体对象转换;转换同名的属性

nuget:  

EntityMappingDB 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值