2011-11-15 33 views
0

AutoMapper可以有兩個映射是相同的類型,但不知何故使用一個有時和第二個其他時間?我可以告訴AutoMapper如何在競爭地圖之間進行選擇嗎?

像這樣的東西是什麼,我想:

Mapper.CreateMap<FunkyObject, Client>().ConvertUsing(new FirstConversionType()); 
Mapper.CreateMap<FunkyObject, Client>().ConvertUsing(new SecondConversionType()); 

我願做上述並以某種方式告訴automapper當我做了映射,使用哪一個。那可能嗎?

+0

爲什麼不在定製轉換器中定義「有時」? –

+0

@Andrew Whitaker - 因爲沒有辦法將參數傳遞給轉換器。因此,我可以說什麼時候使用一種類型的轉換或另一種類型的唯一方法是修改我的類。兩者都是生成的類,所以我必須將其作爲一個部分類來完成(儘管這不是一個大問題)。但是我寧願不向類中添加轉換標誌,因爲它不是真正關心類的問題轉換。 – Vaccano

回答

0

致電Mapper.Reset();之前Mapper.CreateMap<...>(...);

相關問題