我正在Web表单中使用Telerik控件,并希望在客户端上序列化对象。由于使用Sys.Serialization.JavaScriptSerializer.deserialize遇到了stackoverflow错误,因此我想尝试JSON。使用JSON和MS库,我得到“ Sys.Application未定义。”
有人遇到过这种情况,您在工作时做了什么?
编辑
我在父页面上序列化对象,并将其通过参数传递给子窗口。子窗口位于IFRAME标记中。可以在子页面中使用该对象,但是在序列化该对象时会收到stackoverflow错误。该对象是对象数组。
我可能有解决方法。在父页面上,我执行以下操作:
// Call Dialog Window
var radWindow = window.radopen(null, "DialogWindow");
var args = new Object();
// Assign DisplayValues
args.serialPairs = Sys.Serialization.JavaScriptSerializer.serialize(jsonDataValuePairs);
radWindow.argument = args;
radWindow.SetUrl("AssignCCMProfile.aspx?CCMId=" + ccmId + "&ExecDate=" + execDate);
radWindow.Center();
radWindow.Show();
在子页面上,我执行以下操作:
dataValuePairs = Sys.Serialization.JavaScriptSerializer.deserialize(args.serialPairs);
对我来说,这似乎是一团糟。它可以工作,但是我宁愿将对象从父窗口传递到子窗口,仍然能够在子窗口上序列化该对象。