@embiid

Как правильно перемапить Dto?

Не знаю, где я допускаю ошибку в маппинге. В конфигурациях не могу достучаться до userid.id

Есть сущности:
public class OrderDto
    {
        public int Id { get; set; }
        public string City { get; set; }
        public string Country { get; set; }
        public int ZipCode { get; set; }
        public User UserId { get; set; }
        public IList<OrderDetailJoinDto> OrderDetails { get; set; }
    }

public class OrderCreateModel
    {
        public int UserId { get; set; }
        public string City { get; set; }
        public string Country { get; set; }
        public int ZipCode { get; set; }

    }


CreateMap<OrderCreateModel, OrderDto>()
                .ForMember(property => property.UserId, 
                    property => property
                        .MapFrom(property => property.UserId));


Ошибка:
AutoMapper.AutoMapperMappingException: Error mapping types.

Mapping types:
OrderCreateModel -> OrderDto
Magazin.Order.Models.OrderCreateModel -> Magazin.Infrastructure.Data.Dtos.OrderDto

Type Map configuration:
OrderCreateModel -> OrderDto
Magazin.Order.Models.OrderCreateModel -> Magazin.Infrastructure.Data.Dtos.OrderDto

Destination Member:
UserId
  • Вопрос задан
  • 91 просмотр
Пригласить эксперта
Ответы на вопрос 1
MANAB
@MANAB
Разрабатываю на C#: Web, Desktop, Gamedev
CreateMap<OrderCreateModel, OrderDto>()
                .ForMember(property1 => property1.UserId, 
                    property1 => property1
                        .MapFrom(property2 => property2.UserId));

В общем у тебя property дублируется название и не оттуда UserId берется.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы