【发布时间】:2020-03-31 17:58:06
【问题描述】:
使用 AutoMapper 如何在子集合中使用父属性?
我想映射这个类:
public class ParentModel
{
public int Id { get; set; }
public string Test { get; set; }
public ICollection<ChildModel> Children { get; set; }
}
到这个班级:
public class ParentDTO
{
public int Id { get; set; }
public string Test { get; set; }
public ICollection<ChildDTO> Children { get; set; }
}
并具有以下映射:
CreateMap<ParentModel, ParentDTO>()
.ForMember(d => d.Children , opt => opt.MapFrom(s => s.Children))
;
CreateMap<ChildModel, ChildDTO>()
;
ChildDTO 类有一个名为 Test 的属性,其值需要来自名为 Test
的 ParentModel 类属性public class ChildDTO
{
public int Id { get; set; }
public string Name { get; set; }
//Take Me From The Parent Class
public string Test { get; set; }
}
我应该在映射中指定什么来实现这一点?
我想在代码中使用的是
var dto = Maper.Map<ParentDTO>(parentModel);
并且让该 DTO 包含子 DTO,其中包含从父级映射的 Test 字段。
【问题讨论】:
-
但是……你有什么错误吗?
标签: c# automapper