2011-07-29 31 views
5

私は自分のプロジェクトにAutoMapperを使い始めています。私は、次の '1対多' マッピングをしたい。このためAutoMapper 1対多の関係

出典:

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を続行するには?これは可能ですか?

ありがとうございます。

答えて

12

このマップはあなたのために働く必要があります:あなたはデシベルからチームを取得している場合は

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

FYI ...、あなたがメンバーリストを読み込む熱望していることを確認してください。

+0

ありがとうございます!それが私が探していたものでした。すばらしい週末を! – Robert