AutoMapper小类到大类的验证

时间:2017-04-20 14:43:44

标签: c# automapper automapper-6

我有一个包含30多个属性的大类,我需要从一个具有大约6个属性的小类映射到它,这些属性应该自动映射(相同名称,相同类型)。我不想在映射配置中维护24+ .Ignore()的列表,但我确实希望能够针对我的所有其他映射运行AutoMapper的验证例程。但是,我并不特别在意这个映射是否经过验证。

我尝试过ReverseMap和一些Ignore *方法来查看可能有效的方法。我认为ReverseMap会成为伎俩,但要么我使用它错了,要么就是我不理解它做的事情。它似乎没有充分记录。

为清楚起见:

public class LargeClass {
    // 30+ properties here
}

public class TinyClass {
    // 6 properties here that map perfectly to LargeClass
    // 4-8 properties that do not map to LargeClass, by design
}

CreateMap<TinyClass, LargeClass>(); // Will not validate, 24+ unmapped properties on Destination :(

谢谢!

1 个答案:

答案 0 :(得分:1)

ReverseMap是您想要从CreateMap调用中反转地图的时间。

听起来您需要传入要验证的成员列表:

CreateMap<TinyClass, LargeClass>(MemberList.Source);

这将对源成员进行验证。

如果您需要更多文档,请查看wiki!