如何避免重命名属性和自动映射器出现问题

本文关键字:映射 问题 何避免 重命名 属性 | 更新日期: 2023-09-27 18:32:11

假设我们有两个具有以下属性的 C# 类 A 和 B

A
-Name
-SurName
B
-Name
-SurName

使用自动映射器,我可以毫无问题地从A类映射到B类。

如果我对 A 类 - 名称进行重构会发生什么。使用 VS2010 重命名。

那么类将是

A
-NameRefactored
-SurName
B
-Name
-SurName

由于我们正在使用Automapper,重构无法知道他也应该更改B的名称。

最糟糕的是,重构永远不会抱怨任何事情,直到我们发现自动映射后的 B.Name 是空的......

我们如何避免此类问题?

如何避免重命名属性和自动映射器出现问题

使用 Mapper.AssertConfigurationIsValid() 方法来验证您的配置。它完全按照播发的方式执行 - 检查以确保目标类型上的所有成员都已映射。