【发布时间】:2013-07-08 21:35:35
【问题描述】:
我有一个父级,它有一个子级列表。我也有一份父母名单,但没有必要详细说明。
我需要每个孩子都知道它的父母,所以我为每个孩子设置了一个父母参考属性。我需要能够深度复制父级,这也将深度复制它的所有子级。
我正在使用DataContractSerializer 作为我的深层副本。我的问题是,这也会占用每个孩子的引用父母和深拷贝——导致父母重复;或者至少从测试中我认为是这样的。
我认为这将是一些简单的DataMember 标签来强制成员特定的浅拷贝,但找不到任何东西。
补充一点,我不能创建父 IsReference = true,因为在我的完整对象结构中,他也可以是祖父母的孩子——在这种情况下,我需要深度复制他。
我尝试了其他方法,例如使用索引而不是类引用来返回 child.parent,但这会引发其他基本问题,从而破坏整体设计。
谁能帮忙?
【问题讨论】:
标签: c# serialization