Ошибка сопоставления объекта с DTO в AutoMapper - PullRequest
0 голосов
/ 07 августа 2020

Я просмотрел Google и некоторые сообщения здесь, на SO, но я не могу понять, почему моя установка Automapper отображает одни классы, а не другие. Я использую. net core 3.1 и AutoMapper 10.0.0

Ниже моя реализация

FactoryOLTPSystemsEntity: класс сущности FactoryOLTPSystems: Доменный класс (DTO)

Эти классы по существу одинаковы с одинаковыми свойствами, и нет никаких изменений, за исключением того, что они принадлежат другому пространству имен .

Регистрация службы services.AddAutoMapper(AppDomain.CurrentDomain.GetAssemblies());

Мой класс сопоставления

            //This works perfectly fine 
            CreateMap<Routes, RoutesEntity>()
                .ForMember(dest => dest.integration_id,
                opt => opt.MapFrom(src => Convert.ToString(src.route_id)))
                .ForMember(dest => dest.line_no,
                opt => opt.MapFrom(src => int.Parse(src.dos_line_no.ToString())))
                .ForMember(dest => dest.sub_part_import_src,
                opt => opt.MapFrom(src => double.Parse(src.subimport_path)))
                 .ForMember(dest => dest.dgs_server_id,
                opt => opt.Ignore());

            //This doesnt
            CreateMap<FactoryOLTPSystemsEntity, FactoryOLTPSystems>().ReverseMap();

Это ошибка, которую я получаю

Missing type map configuration or unsupported mapping.

Mapping types:
Object -> FactoryOLTPSystems
System.Object -> NameSpace.FactoryOLTPSystems

Я не уверен, что я что-то упускаю. Любая помощь будет принята с благодарностью .. Ура !!

1 Ответ

0 голосов
/ 07 августа 2020

Не уверен, почему, но это сработало, вместо

services.AddAutoMapper(AppDomain.CurrentDomain.GetAssemblies());

Я использовал приведенный ниже код для регистрации AutoMapper в методе ConfigureService

 var mapperConfig = new MapperConfiguration(mc =>
                    {
                        mc.AddProfile(new MappingConfig());
                    });
...