我正在升级代码,以在大型解决方案中使用最新版本的AutoMapper。在多个AutoMapper配置文件中,两个对象之间存在重复的绑定-每个对象对ForMember()
的调用不同。在我之前的开发人员中并没有注意到这些,但是我想是因为我现在正在呼叫.AssertConfigurationIsValid()
,所以我看到了一个列出重复映射的异常。
其他人编写了此代码,但我不知道其背后的业务逻辑。我想在不改变应用程序工作原理的情况下解决问题,但是我需要知道在这种情况下AutoMapper的作用。最好的情况是,如果AutoMapper在同一对象之间遇到另一个映射时,它覆盖了先前的映射,这意味着我可以删除所有重复的映射,但配置文件中出现的最后一个映射除外。但是,如果它完成了某种形式的映射合并,那么我将有更多工作要做。
AutoMapper对重复映射有什么作用?