【发布时间】:2021-08-11 10:23:03
【问题描述】:
我有一个类Affaire,包含Secteurs,包含关联的Emplacements,以及要转换的相应DTO 对象。我为此使用AutoMapper。
public class Affaire
{
public string Nom { get; set; }
public class Emplacement
{
public int AffaireId { get; set; }
public Affaire Affaire { get; set; }
public class EmplacementDTO
{
public int AffaireId { get; set; }
public string AffaireNom { get; set; }
Emplacements 分组在Secteur,以及它的Affaire
public class Secteur
{
public int AffaireId { get; set; }
public Affaire Affaire { get; set; }
public IList<Emplacement> Emplacements { get; set; } = new List<Emplacement>();
当我从Emplacement 映射到EmplacementDTO 时,我不想包含Affaire,只包含AffaireId:
CreateMap<Emplacement, EmplacementDTO>()
.ForMember(dto => dto.AffaireId, o => o.MapFrom(dto => dto.Affaire.Id))
.ForMember(dto => dto.AffaireNom, o => o.MapFrom(dto => dto.Affaire.Nom))
.ReverseMap()
.ForPath(bo => bo.Affaire, o => o.MapFrom(dto => (Affaire)null)); // <<<< HERE
当 Emplacement 嵌入到容器 SecteurDTO 中时,此配置似乎不起作用,但是,对于容器本身,配置似乎起作用(其 Affaire 设置为 null):
CreateMap<Secteur, SecteurDTO>()
.ForMember(dto => dto.AffaireId, o => o.MapFrom(dto => dto.Affaire.Id))
.ForMember(dto => dto.AffaireNom, o => o.MapFrom(dto => dto.Affaire.Nom))
.ReverseMap()
.ForPath(bo => bo.Affaire, o => o.MapFrom(dto => (Affaire)null))
相关问题here
【问题讨论】:
-
嗨@Serge,我无法重现该问题,请分享您的整个模型设计。
标签: c# asp.net-core-mvc mapping automapper .net-5