映射列表时,Automapper不会将List <T>映射到List <T>

时间:2019-08-19 22:31:21

标签: automapper

我正在使用具有CQRS模式的自动映射器。下面是我的类,它从.net核心API输入信息。该API将集合作为输入,我将在Mediatr Command对象中发送集合。在Mediatr命令中,我将源集合映射到目标集合,并且在进行映射时,出现以下异常:

AutoMapper.AutoMapperMappingException
  HResult=0x80131500
  Message=Error mapping types.

Inner Exception 1:
AutoMapperMappingException: Missing type map configuration or unsupported mapping.

我正在使用以下代码进行映射:

var insertData = _mapper.Map<List<Source>, List<Destination>>(request.Data.ToList());

在我的课堂上,我有以下内容:

public class Source: ICustomMapping
    {
        public int? Prop1 { get; set; }
        public string Prop2 { get; set; }
        public void CreateMappings(Profile configuration)
        {
            configuration.CreateMap<Destination, Source>()
                .ForMember(dto => dto.Prop1 , opt => opt.MapFrom(p => p.Prop1 ))
                .ForMember(dto => dto.Prop2, opt => opt.MapFrom(p => p.Prop2))
                ;
        }
    }

当我在两种方式(正向和反向)中都具有单个对象时,此映射可以完美地工作。现在,我需要传递对象集合以进行处理,并将目标集合数据保存到数据库中。

1 个答案:

答案 0 :(得分:0)

查阅文档后,我意识到我没有反向映射。

password

我缺少的ReverseMap()。

谢谢