Использование Automapper для отображения свойства коллекции в массив примитивов

Учитывая следующий набор классов:

class Parent
{
    string Name { get; set; }
    List<Child> children { get; set; }
}
class Child
{
     short ChildId { get; set; }
     string Name { get; set; }
}

class ParentViewModel
{
      string Name { get; set; }
      short[] ChildIds { get; set; }
}

Когда я вызываю

Mapper.Map<Parent, ParentViewModel>(vm);

Можно ли заставить AutoMapper переводить список Child.ChildId в ParentViewModel.ChildIds ?

Я пробовал сделать что-то вроде этого:

Mapper.CreateMap<Child, short>()
    .FromMember(dest => dest, opt => opt.MapFrom(src => src.ChildId));
Mapper.CreateMap<Parent, ParentViewModel>()
    .FromMember(dest => dest.ChildIds, opt => opt.MapFrom(src => new[] {src.children}));

Но я получаю сообщение об ошибке, что он не знает, как преобразовать список дочерних объектов в int16. Есть предложения?

10
задан lambinator 5 October 2011 в 18:25
поделиться