使用AutoMapper映射集合

时间:2009-10-26 10:05:38

标签: c# automapper

我正在尝试将数组映射到ICollection

类型的<T>.

基本上我希望能够做到:

Mapper.CreateMap<X[], Y>();

YCollection<T>

的位置

有什么想法吗?

2 个答案:

答案 0 :(得分:52)

您不需要为集合设置映射,只需要设置元素类型。 所以只是:

Mapper.CreateMap<X, Y>();
Mapper.Map<X[], Collection<Y>>(objectToMap);

有关详细信息,请参阅此处:http://automapper.codeplex.com/wikipage?title=Lists%20and%20Arrays&referringTitle=Home

答案 1 :(得分:2)

现在看起来你可以使用:

Mapper.CreateMap<X,Y>(); 
var listOfX = Mapper.Map<List<X>>(someIEnumerableOfY);