1. 程式人生 > 實用技巧 >C#實現物件對映AutoMapper

C#實現物件對映AutoMapper

1.引用AutoMapper包

2.定義兩個實體類

 public class ModelA
        {
            public string UserId { get; set; }
            public string Remark { get; set; }
        }

       public class ModelB
        {
            public string User_id { get; set; }
            public string Remark_msg { get; set; }
            public int Lab_id { get; set; }
        }

3.定義對映規則,並對映

 public List<ModelB> MappingModeB(List<ModelA> data, int lab_Id)
        {
            MapperConfiguration config = new MapperConfiguration
           (
               mp => mp.CreateMap<ModelA, ModelB>()  //  給config進行配置對映規則
                       .ForMember(nclog => nclog.User_id, clog => clog.MapFrom(log => log.UserId == null ? "" : log.UserId))  // 指定對映欄位
                       .ForMember(nclog => nclog.Remark_msg, clog => clog.MapFrom(log => log.Remark))
                       .ForMember(nclog => nclog.Lab_id, clog => clog.MapFrom(log => lab_Id))
           );
            var Modellogs = config.CreateMapper();
            return Modellogs.Map<List<ModelB>>(data);  //對映
        }