由于循环引用,需要忽略 XmlSerialization 中的属性

发布于 2024-12-17 19:19:44 字数 647 浏览 2 评论 0原文

有一个具有我不需要序列化的属性的对象。此属性的类型会生成我所期望的循环引用,因此我用我想到的所有内容装饰此属性:

private clsDeclaracion _Declaracion;
[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
[System.Xml.Serialization.XmlIgnore]
public clsDeclaracion Declaracion
{
  get { return _Declaracion; }
  set { _Declaracion = value; }
}

但是,循环引用不断触发。尝试使用公共领域但没有运气。 这是我的序列化代码:

System.Xml.Serialization.XmlSerializer Serializador =
            new System.Xml.Serialization.XmlSerializer(objeto.GetType());

using (StreamWriter SW = System.IO.File.CreateText(ArchivoTemp))
{
  Serializador.Serialize(SW, objeto);
}

Have an object with a property I don't need to serialize. The type of this property generates a circular reference which I expected, so I decorated this property with everything comes to my mind:

private clsDeclaracion _Declaracion;
[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
[System.Xml.Serialization.XmlIgnore]
public clsDeclaracion Declaracion
{
  get { return _Declaracion; }
  set { _Declaracion = value; }
}

However, the circular reference keeps firing. Tried using a public field with no luck.
This is my serialization code:

System.Xml.Serialization.XmlSerializer Serializador =
            new System.Xml.Serialization.XmlSerializer(objeto.GetType());

using (StreamWriter SW = System.IO.File.CreateText(ArchivoTemp))
{
  Serializador.Serialize(SW, objeto);
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

小耗子 2024-12-24 19:19:45

经过检查后发现循环引用并不在异常中声明的类中,它有点深。

After checking here and there it turns out the circular reference was not in the class stated in the exception, it was a little deeper.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文