簡體   English   中英

使用內置映射器的AutoMapper

[英]AutoMapper using built-in mappers

從AutoMapper 4.2.1升級到5.0.0之前,如果不提供配置,我將無法執行此操作:

var entity = Mapper.Map<Dictionary<string, object>, MyEntity>(feature.Attributes);

以前,AutoMapper會自動計算出Dictionary鍵直接映射到屬性名稱,而無需進行任何設置。

我試過初始化使用:

Mapper.Initialize(cfg =>
{
    cfg.CreateMap<Dictionary<string, object>, MyEntity>();
    cfg.CreateMap<Dictionary<string, object>, MyOtherEntity>();
});

但這會導致我的實體中出現空屬性,因為AutoMapper不再以這種方式自動連接其先前的內置Dictionary映射器。

我假設我需要使用類似ProjectUsing()但是我還沒有找到內置的AutoMapper映射器。

我確信這是一個非常簡單的代碼問題,可以解決。 任何快速指示? 甚至鏈接到我可能會錯過的相關文檔? 提前致謝!

您可以使用動態地圖:

var dic = new Dictionary<string, string>();
dic.Add("foo", "bar");

var test = Mapper.DynamicMap<Dictionary<string, string>>(dic);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM