AutoMapper为一个映射抛出AutoMapperConfigurationException,但不为另一个映射抛出

时间:2017-08-15 13:10:20

标签: automapper

我有一个调用Mapper.ConfigurationProvider.AssertConfigurationIsValid();

的测试

我在尝试将AutoMapperConfigurationException映射到IReadOnlyCollection时收到List,但只是第二次尝试执行此操作。

我使用的是AutoMapper 6.0.2版。编辑:我在最新版本6.1.1上运行此操作仍然出现此错误。

我有4节课。

  • FooRow
  • Foo
  • BarRow
  • Bar

我有以下映射。

  1. CreateMap<FooRow, Foo>
  2. CreateMap<IReadOnlyCollection<FooRow>, List<Foo>>
  3. CreateMap<BarRow, Bar>
  4. CreateMap<IReadOnlyCollection<BarRow>, List<Bar>>
  5. 只有#4失败。我收到错误Unmapped properties: Capacity。现在,显然#4我可以添加.ForMember(d => d.Capacity, o => o.Ignore)但我更感兴趣的是我必须为Bar但不是Foo的第二个映射执行此操作。

1 个答案:

答案 0 :(得分:2)

考虑到AutoMapper内置了对数组和列表的支持,可能值得尝试删除集合映射:

https://github.com/AutoMapper/AutoMapper/wiki/Lists-and-arrays