0

こんにちは、オブジェクトからのデータ転送に autommaper を使用しています。2 つのオブジェクトから 1 つのオブジェクトにマップする必要がある場合があります。

これは、リポジトリから取得したデータです。

IEnumerable<GetStudentClassmates_Result> students = UnitOfWork.Dashboard.GetStudentClassMates(studentId);
IEnumerable<GetStudentTeachers_Result> teachers = UnitOfWork.Dashboard.GetStudentTeachers(studentId);

これは、これを次のオブジェクトにマップする必要があります。

public class ParticipantsDTO
{
    public IEnumerable<GetStudentClassmates_Result> Students { get; set; }
    public IEnumerable<GetStudentClassmates_Result> Teachers { get; set; }
}

autommaper でこれを達成する方法はありますか?

4

2 に答える 2

1

あなたの例には同じクラスが含まれているように見えるので、マッピングは必要ないようです。

GetStudentClassmates_ResultDto私はオブジェクトを期待するでしょう。

私を修正してください。答えを更新します。

この記事では、コレクションをマップする方法を正確に示しています。

https://github.com/AutoMapper/AutoMapper/wiki/Lists-and-arrays

まず、マップを作成する必要があります。

Mapper.CreateMap<GetStudentClassmates_Result, GetStudentClassmates_ResultDto>();

次に、それらをマップします。

IEnumerable<GetStudentClassmates_ResultDto> ienumerableDest = Mapper.Map<IEnumerable<GetStudentClassmates_Result>, IEnumerable<GetStudentClassmates_ResultDto>>(students);
于 2013-06-20T13:02:28.883 に答える