最近有點時間所以就來試用看看。
圖片原始網址:https://lostechies.com/jimmybogard/2016/06/24/automapper-5-0-speed-increases/
新版跟舊版的寫法上有不少的差異,速度也優化了不少。
安裝AutoMapper
從Nuget加入參考
搜尋AutoMapper
安裝
確定
使用AutoMapper
// GET: Users
public ActionResult Index()
{
return View(db.Users.ToList());
}
原本程式碼只有簡單地把所有Users資料表的資料取出來,但若是只要把取出來的資料對映到View要使用的ViewModel的話,
如果不用其他工具就要自己手動一個欄位一個欄位去塞值,現在有了AutoMapper 就可以把這些瑣碎的事交給它去處理了。
var config = new MapperConfiguration(
cfg =>
{
//左邊類別是資料源,右邊類別是目的地
cfg.CreateMap<Users, UsersViewModel>()
//額外去對映某些欄位
.ForMember(x => x.FullName, y => y.MapFrom(s => s.FirstName + s.LastName));
});
//最後對映完成的資料
List<UsersViewModel> Result = config.CreateMapper().Map<List<Users>, List<UsersViewModel>>(db.Users.ToList());
沒有留言:
張貼留言