2016-05-14 29 views
1

を定義します。は、私は2つのクラスを持っているマッピング配列

私はAutomapper使用:

var config = new MapperConfiguration(cfg => 
{ 
    cfg.CreateMap<Customer, Customer_>(); 
}); 

IMapper mapper = config.CreateMapper(); 
var dest = mapper.Map<Customer[], Customer_[]>(Customer); 

をしかし、オブジェクトdestは、マップを作成し、及びマッピングを定義する方法2つのインデックスヌル

を持っているのですか?たとえば、次のようにCustomer.FirstName = Customer_.FirstName ...など

編集:

私は私のクラスの顧客と私のインスタンスに値に新しいプロパティQuantity(int型)を追加します。今、私が持っている唯一の顧客をマップしたい数量> X

Customer[] Customer = new Customer[] 
{ 
    new Customer() 
    { 
     FirstName = "FirstName1", 
     LastName = "LastName1", 
     Quantity = 11 
    }, 
    new Customer() 
    { 
     FirstName = "FirstName2", 
     LastName = "LastName2", 
     Quantity = 5 
    } 
}; 

どうするのですか?

+0

2番目のタイプのプロパティのスペルが異なるのはなぜですか? –

+0

Automapperをテストするために:) –

答えて

1

documentationはこれを明確に概説しています。

先のプロパティの名前は正確にソースプロパティと一致していないので...、私たちは私たちの型マップの設定でカスタム・メンバーのマッピングを指定する必要があります:あなたが持っている

cfg.CreateMap<Customer, Customer_>() 
    .ForMember(dest => dest.FirstNam , opt => opt.MapFrom(src => src.FirstName)) 
    .ForMember(dest => dest.LastNam , opt => opt.MapFrom(src => src.LastName)) 

注意必要に応じてその他の方向に明示的にマッピングします。

関連する問題