AutoMapper один ко многим - PullRequest
       17

AutoMapper один ко многим

5 голосов
/ 29 июля 2011

Я начинаю использовать AutoMapper для своего проекта.

Для этого я хочу сделать следующее отображение «один ко многим»:

Источник:

public class Team
{
    int Id { get; set; }
    string TeamName { get; set; }
    List<Person> Member { get; set; }
}

public class Person
{
    int Id { get; set; }
    string Name { get; set; }
}

Назначение:

public class TeamDetailsViewModel
{
    int Id { get; set; }
    string TeamName { get; set; }
    List<int> MemberIds { get; set; }
}

Как продолжить работу с AutoMapper?Возможно ли это?

Заранее большое спасибо.

1 Ответ

12 голосов
/ 29 июля 2011

Эта карта должна работать для вас:

CreateMap<Team, TeamDetailsViewModel>()
    .ForMember(d=>d.MemberIds, o=>o.MapFrom(s=>s.Member.Select(m=>m.Id)));

К вашему сведению ... Если вы получаете команду из БД, убедитесь, что вы стремитесь загрузить список участников.

...