我正在使用 AutoMapper 将 UI 模型转换为 POCO,然后我使用 DataContractSerializer 将其序列化为 XML,以保留它们之间的引用。
问题来了,当映射时,这些实体之间的引用会丢失。
UI 类相互引用,但映射过程为每个引用创建新实例,因此原始关系被破坏:(
让我解释:
我有 2 个 Person 类型的实体
Person
{
List<House> OwnedHouses
}
而这两个对象
拥有的约翰
- 房子1
威尔 谁也拥有
- 房子1
当 AutoMapper 正确映射每个 Person 时,但它也将 House1 映射为两个不同的实例!
所以我有两份House1。John 拥有他的 House1 (#1),Will 拥有他的 House1 (#2)。
它们不再链接。
有什么办法可以保持原来存在的关系?
谢谢。
编辑:实际上我所拥有的是:
一个 Document 包含一个 ChildDocument 的列表。每个 ChildDocument 都有一个 Designable 列表(矩形、线条、椭圆……)和一个名为 ChildDocumentAdapter 的特殊设计,它包含自己的另一个 ChildDocument。这就是麻烦,它可以引用另一个ChildDocument。