禁用automapper的默认映射约定

时间:2011-05-23 14:26:52

标签: .net automapper

HI,

我在我的应用程序中使用autommaper,现在我有一个问题。当我使用ConstructUsing方法指定构造函数来映射对象时,Automapper在默认情况下复制所有其他字段。但我不需要那个。我怎么设置,Mapper应该使用JUST构造函数而不复制其他东西?或者唯一的方法是编写自定义转换器。

3 个答案:

答案 0 :(得分:4)

使用.ForAllMembers(opt => opt.Ignore())来避免其他映射。在这种情况下,只会执行方法调用。

答案 1 :(得分:1)

转换器是要走的路,它的设计是不进行其他复制。它还需要一个Func< TSource,TDestination> ,所以你应该能够将你在配置中调用的方法从ConstructUsing换成ConvertUsing。

答案 2 :(得分:1)

如果要禁用大多数属性的映射 您可以使用.ForAllOtherMembers(opt => opt.Ignore())