Automapper複雜型別問題小結
阿新 • • 發佈:2018-12-05
Automapper在對映時可能會遭遇無法映射出值的問題,而且可能並不會正確報錯,一旦碰到這個時候需要仔細排查原因,可用的一些思路如下:
- 將To中的無需對映欄位需挨個設定為Ignore。
- IQueryAble的ProjectTo也是支援複雜型別對映的。
- IQueryAble執行ProjectTo時,遇到複雜型別可以不使用Include,但是一旦使用Include則需將所有的引用型別都Include進來,如
public class ViewActionDto : IEntityDto<Guid> { public Guid Id { get
_viewActionR.GetAll() //.Include(u => u.View).Include(u=>u.View.ParentView).Include(u => u.CommonAction) .ProjectTo<ViewActionDto>().ToList();
否則會出現部分映射出問題,則SQL語句大量增加的問題。