Отображение коллекций с помощью AutoMapper

Я пытаюсь сопоставить массив с ICollection типа <T>.

В основном я хочу уметь:

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

Где Y - это Collection<T>

Любые идеи?


person Brian Liang    schedule 26.10.2009    source источник
comment
Какое поведение вы сейчас наблюдаете?   -  person Jimmy Bogard    schedule 26.10.2009
comment
Просто невозможно сопоставить массив с ICollection ‹T›. Выдается исключение сопоставления.   -  person Brian Liang    schedule 27.10.2009


Ответы (2)


Вам не нужно настраивать отображение для коллекций, только типы элементов. Так что просто:

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

Дополнительную информацию см. Здесь: http://automapper.codeplex.com/wikipage?title=Lists%20and%20Arrays&referringTitle=Home

person Drew Freyling    schedule 11.11.2009
comment
Как насчет того, чтобы отобразить строку [] в Y? например где каждая строка в массиве будет соответствовать другому свойству Y? - person Steve Dunn; 25.06.2010

Теперь похоже, что вы можете использовать:

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