[英]Automapper - Creating Maps in C#
剛開始使用AutoMapper並想使某些事情變得清晰。
假設我要在User和UserDto之間無縫映射。
這些示例似乎都建議我必須先進入啟動區域(例如WebApiConfig.cs或startup.cs或global.axax等),然后執行以下操作:
Mapper.CreateMap<User, UserDto>();
大概如果我有50或100個要映射的實體/ DTO,我是否真的需要添加50或100行代碼以及一類到另一類之間的映射? 當然有更聰明的方法了吧?
如果我不需要進行任何特定的映射/覆蓋,是否真的需要這樣做? 我一定誤解了框架的基礎,因為這對我來說似乎是錯誤的。
謝謝!
只要源和目標上的所有內容都匹配,就可以使用DynamicMap
:
var target = Mapper.DynamicMap<TSource, TTarget>(source);
但是,根據需要創建映射會更有效:
if (Mapper.FindTypeMapFor<TSource, TTarget>() == null)
{
Mapper.CreateMap<TSource, TTarget>();
}
var target = Mapper.Map<TSource, TTarget>(source);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.