AutoMapper игнорирует поля того же типа, что и находятся в IMapFrom

Есть два типа:

    public class Comment
    {
        public long Id { get; set; }
        public long CommentSetId { get; set; }
        public CommentSet CommentSet { get; set; }
        public long? ReplyToId { get; set; }
        public Comment ReplyTo { get; set; }
        public ICollection<Comment> Children { get; set; }
        public string Text { get; set; }
        public long LikeSetId { get; set; }
        public LikeSet LikeSet { get; set; }
        public bool Archived { get; set; }
        public CommentsTypes CommentType { get; set; }
    }

    public class CommentDto : IMapFrom<Comment>
    {
        public long Id { get; set; }
        public string Text { get; set; }
        public CommentsTypes CommentType { get; set; }
        public DateTime Created { get; set; }
        public bool Archived { get; set; }
        public long CommentSetId { get; set; }

        public TicketDto Ticket { get; set; }
        public ContentPageDto ContentPage { get; set; }
        public NewsDto News { get; set; }
        public IdeaDto Idea { get; set; }
        public BillboardDto Billboard { get; set; }

        public EmployeeWithAvaAndPositionDto CreatedBy { get; set; }
        
        public ICollection<CommentDto> Children { get; set; }
        public CommentDto ReplyTo { get; set; }

        public void Mapping(Profile profile)
        {
            profile.CreateMap<Comment, CommentDto>()
                .ForMember(d => d.Ticket, s => s.MapFrom(src => src.CommentSet.Ticket))
                .ForMember(d => d.ContentPage, s => s.MapFrom(src => src.CommentSet.ContentPage))
                .ForMember(d => d.News, s => s.MapFrom(src => src.CommentSet.News))
                .ForMember(d => d.Idea, s => s.MapFrom(src => src.CommentSet.Idea))
                .ForMember(d => d.Billboard, s => s.MapFrom(src => src.CommentSet.Billboard));
        }

И запрос к бд:

var groupedByParentComments = (await _ctx.Comments
                .Include("CreatedBy")
                .Include("CreatedBy.Avatars")
                .Include("CreatedBy.Company")
                .Include("ReplyTo")
                .Include("ReplyTo.CreatedBy")
                .Include("CommentSet")
                .Include("CommentSet.Billboard")
                .Include("CommentSet.ContentPage")
                .Include("CommentSet.Idea")
                .Include("CommentSet.Ticket")
                .Include("CommentSet.News")
                .Include(prop => prop.CommentSet.ContentPage.PageNode)
                .Where(c => c.ReplyTo != null)
                .ProjectTo<CommentDto>(_mapper.ConfigurationProvider)
                .ToListAsync());

Проблема в том, что на поле CommentDto.ReplyTo не мапится поле из целевой сущности Comment.ReplyTo. С чем это может быть связано?

Правило для этого поля в методе .ForMember(...) тоже не работает.


Ответы (0 шт):