【发布时间】:2010-11-30 21:56:26
【问题描述】:
我有一组 linq to sql 类,并使用 .NET JavaScriptSerializer 将它们序列化为 JSON。
但是,一旦我将记录添加到相关表中,序列化就会引发“循环引用异常”。啊啊啊!
详细描述here。
我有几个选择
- 将 linq to sql 类转换为没有关系的类,从而避免循环引用
- 通过使关联归零来剪断循环引用 - 我不认为这是一个真正的选择
- 使用 ScriptIgnoreAttribute(以某种方式)。我不能轻易应用它,因为属性在生成的类中,并且 LINQ to SQL 不会自动支持伙伴类
- 使用 JSON.NET 并以某种方式使用属性 + 伙伴类来阻止序列化程序尝试遍历关系。
有没有其他人遇到过这种情况?如果可能的话,我真的更喜欢最后一个选项,但我不知道该怎么做。
非常感谢任何帮助
【问题讨论】:
标签: c# .net json serialization json.net