2014-09-13 18 views
0

我有单页,包含有关代理的所有信息。 因此我将数据区分为Tabs。 所有信息都相互关联。不支持反序列化数组:C#jquery

请在下面找到aspx设计代码。

http://pastebin.com/JT7V7Bd1

请找aspx.cs代码:

的http://引擎收录。 COM/BU9TtpqK

和Entity Framework类: http://pastebin.com/di3fqJ6H

我尝试了很多克服Deserializaion错误。 任何人都请尝试在您的最后运行代码,并请纠正我。 我想使用jQuery将json对象发送到aspx,并将解析到不同的表对象,然后保存记录。

如果有什么遗漏,请让我知道。

在此先感谢。

回答

1

这里的问题很可能是序列化无法处理模型类的导航属性中的循环引用。 (例如,你可以无限次地做AgentInfo.AgentAddress.AgentInfo)。

最简单的解决方案是,如果您不需要它们,请从导致循环引用的模型类中删除导航属性。例如,如果您不需要从代理地址到达AgentInfo,请将其删除。

否则,您可以创建一组单独的类用作数据传输对象(dto)。

+0

我已经分享了我的实体框架及其关系。您的意思是说我需要在控制器级别创建具有相同属性的同一个类? – 2014-09-13 13:47:36

+0

关系不是问题,我告诉你,你有循环导航属性(这是绝对很好,顺便说一句),并且这些属性不能很好地与序列化。通过属性查看序列化程序循环。如果您可以从AgentAddress中获得AgentInfo,反之亦然,那么串行器如何停止? – 2014-09-13 13:50:11

+0

让我试试会回复给你...谢谢汤姆 – 2014-09-13 13:52:52