0

我目前使用代码从匿名类型映射地图属性

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()));

当我想映射 wherePropXSource = List<Expression<Func<T1, object>>>并且目标属性是IEnumerable. 我有点卡在那里。

我想遍历表达式并将表达式结果的映射添加到 ienumerable 属性。

4

1 回答 1

0

不是一个很好的答案,但是对于更复杂的可枚举不使用自动映射器更容易。只需使用每个循环的嵌套手动复制它。

因此,要回答我的问题,据我所知,不建议在这种情况下使用 automapper。我最终使用嵌套循环将属性从 T 手动复制到 ListCboxItem

于 2013-04-23T19:38:54.067 回答