在javascript中接收损坏的JSON数据

时间:2016-02-09 10:06:17

标签: javascript c# json xml

我在javascript中有PageMethod,它从C#接收JSON数据。 在C#中,它从数据库获取完整的xml数据并转换为JSON并发送回PageMethod。

JSON转换数据大约是33kb,但我无法在javascript中接收完整数据。我只收到9 kb的数据。任何在java脚本中获取完整数据的解决方案。

PageMethod.methodName(onSuccess,OnFail);

function OnSuccess(result)
{
alert(result);
}
function OnFail()
{
alert("Error");
}

C#代码如下,

 ParamResult objParamResult = new ParamResult();
 objParamResult.ResultDt = string.Empty;
 DataTable XmlMainSub = objCBTag.getParamPickupDetailsDB();

 string myData = XmlMainSub.Rows[0][0].ToString();
 XmlDocument doc = new XmlDocument();
 doc.LoadXml(myData);

 string jsonText = JsonConvert.SerializeXmlNode(doc);
 return jsonText;

2 个答案:

答案 0 :(得分:0)

而不是

string jsonText = JsonConvert.SerializeXmlNode(doc);

你可以使用

string jsonText = new JavaScriptSerializer().Serialize(doc).toString();

您需要为此

使用命名空间
using System.Web.Script.Serialization;

答案 1 :(得分:0)

  • 经过大量研究后,我发现无法将C#中的JSON数据发送到大于 8KB 9KB 的javascript。
  • 我通过使用 Dictionary 的c#generics解决了这个问题,其中包含 Key Value Pair。我试图循环来自数据库并存储在字典对象中的XML数据。
  • 然后我将它传递给javascript。在那里我能够毫无错误地接收完整的数据。