4

我有一个非常大的类(500 多个属性和嵌套的复杂对象),我们正在映射到另一个具有相同属性的类,即它是一对一的映射。

请不要评论我们为什么要这样做(说来话长 - 但这是一个正在重新架构的遗留系统,这是重构服务下一阶段的垫脚石) - 为什么不自动映射等等。数据映射是用 C# 手工编码的。

我可以创建一个测试对象,映射并比较映射的对象,但是要填充的属性太多了,这本身就是我们希望避免的主要任务。

关于我是否可以使用反射或序列化/反序列化或一些测试库或者可能以某种方式使用自动映射器来填充对象、映射和比较的任何想法?

我们需要确保 a) 所有属性都已映射,并且 b) 每个属性都映射到正确的属性(每个对象上的属性名称相同)

我怀疑手动代码审查可能是唯一可行的解​​决方案,但我正在联系......

更新 确定不知道为什么人们对此投了反对票。这是一个具有一些潜在复杂技术解决方案的有效问题。感谢您提供有用建议的回复!

4

1 回答 1

1

关于我是否可以使用反射或序列化/反序列化或一些测试库或者可能以某种方式使用自动映射器来填充对象、映射和比较的任何想法?

您可以只使用序列化程序并序列化一个对象并反序列化另一个对象。如果您的对象是不做奇异东西的普通数据类,则可能是三到五线。

于 2018-09-11T11:39:13.897 回答