2016-10-24 10 views
0

を持つオブジェクトへのオブジェクトの地図:私はクラスを持つサブリスト

public class LearnerEventDto 
{ 
    public List<LearnerEventInfoDto> LearnerEventInfo { get; set; } 

    public string QualificationTypeField { get; set; } 
} 

サブDTOがあります

public class LearnerEvent 
{ 
    public string SubjectField { get; set; } 

    public string GradeField { get; set; } 

    public DateTime AchievementAwardDateField { get; set; } 

    public string QualificationTypeField { get; set; } 
} 

私はDTOにこれをマッピングしたいと思います:

public class LearnerEventInfoDto 
{ 
    public string SubjectField { get; set; } 

    public string GradeField { get; set; } 

    public DateTime AchievementAwardDateField { get; set; } 
} 

目的はグループ内でオブジェクトを表示できるようにすることです。特典タイプ別に分類

私はカスタムマッパー(オートマッパーを使用して)を書く必要があるかもしれないと知っていますが、どうすればいいのか分かりません。

答えて

0

あなたが望むマッピングは、そのリスト内のすべてのInfoDTOオブジェクトが同じQualificationTypeを持たなければならないことを意味します。つまり、LearnerEventを既に特定のタイプにフィルタリングしています。 QualificationTypeを「DTOリスト」に書き込む必要はありません。

LearnerEventクラスを配布したくない、またはあなたの例に表示されていない特定の情報をフィルタリングする必要があるため、DTOで作業していると思いますあなたが送信したいLearnerEventのフィールドを持つLearnerEventDTOを作成し、リストに入れて、どこにでも送ることができます。

他の側は、任意のelemenでそれを検索し、アイテムが同じQualificationTypeを持つと思われる場合、QualificationTypeを決定できます。

+0

私はもともとそれをあなたが提案している方法で持っていましたが、私のマネージャーは、すべての並べ替えをフロントエンドに戻す前に完了したいと言っていました。 – user312687

+0

ソートすることは、資格別にグルーピングすることを意味します – user312687

+0

しかし、それらは既にグループ化されています。 QualificationTypeをListDTOに書き込む場合、そのListDTO内のListItemDTOはそのQualificiationTypeを正確に持つ必要があります。それ以外の契約は無効です。 したがって、イベントは既にグループ化されています。 – wickermoon

関連する問題