59

私はこれらのクラスを持っています:

public class Person {
    public int Id{ get; set ;}
    public string FirstName{ get; set ;}
    public string LastName{ get; set ;}
}

public class PersonView {
    public int Id{ get; set ;}
    public string FirstName{ get; set ;}
    public string LastName{ get; set ;}
}

私はこれを定義しました:

Mapper.CreateMap<Person, PersonView>();
Mapper.CreateMap<PersonView, Person>()
    .ForMember(person => person.Id, opt => opt.Ignore());

それはこれでうまくいきます:

PersonView personView = Mapper.Map<Person, PersonView>(new Person());

List<Person>私は同じものを作りたいのですがList<PersonView>、正しい構文が見つかりません。

ありがとう

4

3 に答える 3

119

マップを作成したら (既に作成済みなので、リストについて繰り返す必要はありません)、次のように簡単です。

List<PersonView> personViews = 
    Mapper.Map<List<Person>, List<PersonView>>(people);

リストと配列の AutoMapper ドキュメントで詳細を読むことができます。

于 2012-01-17T18:07:31.927 に答える