我目前使用代码
来映射来自匿名类型的地图Mapper.CreateMap<T, CBoxItem>()
.ForMember(m => m.Prop1, x => x.MapFrom(Prop1Source.Compile()));
//followed by
Mapper.Map(src, new List<CBoxItem>)
//where Prop1Source= Expression<Func<T, object>>
我想从道具来源为多个专业人士做这件事 - 以下也适用
Mapper.CreateMap<T, ListCboxItem>()
.ForMember(m => m.Prop1, x => x.MapFrom(Prop1Source.Compile()));
.ForMember(m => m.Prop2, x => x.MapFrom(Prop2Source.Compile()));
当我要映射PropXSource = List<Expression<Func<T1, object>>>
并且目标属性为IEnumerable
时,我遇到了问题。我有点卡在那里。
我想迭代表达式并将表达式结果中的映射添加到ienumerable属性中。
答案 0 :(得分:0)
不是一个很好的答案,但更容易不使用automapper来实现更复杂的可数字化。只需使用嵌套为每个循环手动复制它。
所以,为了回答我的问题,据我所知,不建议在这种情况下使用automapper。我最终使用嵌套循环手动将属性从T复制到ListCboxItem