在我正在处理的项目(在 C# 中)中,我必须使用还包含序列化对象方法的 JSON 表示。这就是我必须实现自己的序列化程序的原因。序列化器通过反射非常简单地实现。我的问题是它还必须能够处理具有与原始对象相同类型的“自创”属性的对象。
例子:
class ClassA
{
private ClassA a;
public ClassA A
{
get
{
if (a == null)
a = new ClassA();
return a;
}
}
}
每次我迭代 Properties 时,都会创建一个新对象 ( a ),这样序列化器就会以无限递归结束。
知道如何避免这种情况吗?任何建议表示赞赏。