【发布时间】:2017-12-31 05:44:39
【问题描述】:
我按照以下说明操作 https://www.mikesdotnetting.com/article/255/entity-framework-recipe-hierarchical-data-management
现在我正在尝试将我的实体映射到我的 dto 上,但一直失败。
我看到了许多与此相关的问题,但没有一个具有“干净”的映射方式。 我是这样开始的……
CreateMap<MenuItem, DTO.MenuItem>()
.ForMember(d => d.Children, opt => opt.MapFrom(src => src))
.ForMember(d => d.Parent, opt => opt.MapFrom(src => src.Parent))
.ForMember(d => d.MenuText, opt => opt.MapFrom(src => src.MenuText))
.ForMember(d => d.LinkUrl, opt => opt.MapFrom(src => src.LinkUrl))
.ForMember(d => d.MenuOrder, opt => opt.MapFrom(src => src.MenuOrder))
.ForMember(d => d.ParentMenuItemId, opt => opt.MapFrom(src => src.ParentMenuItemId))
.ForMember(d => d.MenuId, opt => opt.MapFrom(src => src.MenuId))
.ForMember(d => d.MenuItemId, opt => opt.MapFrom(src => src.MenuItemId))
.ForMember(d => d.Menu, opt => opt.MapFrom(src => src.Menu));
映射器应该如何知道要映射到哪个父元素?
任何帮助将不胜感激。
【问题讨论】:
-
如果属性名称相同,则无需指定,它将按约定映射...
-
我同意@kayess
-
请提供您的课程以便更好地解释您的问题
-
我的类看起来就像来自 mikedot 的代码优先示例中的那些......如果我按原样映射它们,我会得到一个 stackoverflow。
标签: c# automapper automapper-6