我正在实现一些自定义序列化(到字节数组),并且遇到了处理循环引用的问题。
示例:
Class A
public MyBs as new List(of B)
End class
Class B
public MyParent as A
public MiscInt1 as integer
public MiscInt2 as integer
End Class
序列化A时,我必须序列化B的每个实例。
但是,序列化B时遇到问题。
如何在不导致无限循环的情况下记录B的父级?
一个想法:
如果我知道B的实例只能通过序列化A的实例来序列化,那么我可以从A的实例处理MyParent引用的设置,甚至不在字节缓冲区内记录该信息对于B的实例
这感觉不太对,但它可能是最好的解决方案。
是否有更清洁的方法来处理这种情况?