我正在使用AutoMapper 6.2.2映射A类的某些属性,对于所有其他成员,我将使用以下代码忽略它们:expression.ForAllOtherMembers(f => f.Ignore());这就是我想要的,但是它也忽略了目标A类的基类中的属性(BaseA的属性)。我想使用AutoMapper与A类的某些属性进行映射(基类的属性)。我想要具有以下代码的函数:1.映射A类的一些属性2.映射BaseA(和BaseBaseA,BaseBaseBaseA等)的所有属性3.忽略类A的所有其他属性如果有人有任何想法,请帮助。谢谢。PS我正在将AutoMapper从v3.2.1升级到v6.2.2。我使用的是函数,它忽略了类A中所有未映射的属性(BaseA属性已正常映射)。在新的AutoMapper中进行更改后,我无法使用相同的功能-我正在寻找替代方法来执行此操作。
1 回答
![?](http://img1.sycdn.imooc.com/5333a01a0001ee5302000200-100-100.jpg)
浮云间
TA贡献1829条经验 获得超4个赞
我找到了解决方案,通过使用当前类进行比较来实现:
var destType = typeof(TDestination);
expression.ForAllOtherMembers(f => { if (f.DestinationMember.DeclaringType == destType) f.Ignore(); });
更改AutoMapper的结构后,我在项目中进行了很多更改。我认为,升级AutoMapper init项目的人会使用此代码,例如我的情况。
- 1 回答
- 0 关注
- 388 浏览
添加回答
举报
0/150
提交
取消