2016-06-07 68 views
1

對於每個POCO,您是否需要每種方式配置源和目標?您是否必須配置2個映射器以便與AutoMapper進行雙向映射

var config = new MapperConfiguration(cfg => { 

    cfg.CreateMap<Customer, ServiceModel.Types.InRule.Customer>(); 
    cfg.CreateMap<ServiceModel.Types.InRule.Customer, Customer>(); 

}); 

我想我聽到了一些關於ReverseMap的地方,不知道這是否意味着你只需要配置的一種方式,其他的將被推斷。

回答

1

ReverseMap()將完成這項工作。

var config = new MapperConfiguration(cfg => { 
    cfg.CreateMap<Customer, ServiceModel.Types.InRule.Customer>().ReverseMap(); 
}); 
+1

請注意,'ReverseMap()'只處理簡單的映射,其中所有名稱都相同,並且所有屬性都映射。 – stuartd

+0

如果您還想映射覆雜對象,那麼它們應該映射到它上面。在映射主映射之前,必須映射所有依賴關係。這也將解決複雜的對象映射問題。 –