【发布时间】:2016-07-13 12:50:55
【问题描述】:
我刚刚尝试将 AutoMapper 升级到 5.0.2,但遇到了障碍。
根据migration docs,值解析器现在可以访问目标对象:
值解析器的签名已更改,以允许访问源/目标模型。
这导致每个值解析器都与一个目标类型绑定。
但是,我们的一些值解析器用于多种目标类型。我们有例如在映射我们 DTO 的所有 ID 属性期间使用的解析器。解析器通过注入解析器的服务来修改 ID。
如何在 AutoMapper 5 中定义可重用的值解析器,这样我就不必为每个目标类型创建具有完全相同实现的专用解析器?
注意:使用值解析器而不是直接操作值的主要原因是依赖注入。根据this answer,值解析器是在映射期间使用依赖注入服务的最佳方式。
【问题讨论】: