2
我正在升级正在使用jQuery 1.3.2以使用最新版本的jQuery(1.4.2)来使用WCF数据服务(又名ADO.NET数据服务,a.k.a. Astoria)的应用程序。我的应用程序现在失败了,因为JSON解析错误,因为jQuery 1.4现在使用更严格的JSON解析。WCF数据服务是否返回无效的JSON?
我已经运行了由我的数据服务通过各种JSON验证器返回的JSON,并且这个问题似乎与URI字符串中的单引号转义有关。我的JSON如下所示:
{
"d" : {
"__metadata": {
"uri": "http://foo.com/Services/Foo.svc/Foos(guid\'g17a49d5-fd66-4b2d-bd5f-e6245ec3e268\')" } } }
(我已经修改了它删除不必要的信息。)
分析错误与“\”逃逸单引号。如果我删除转义字符,JSON会干净地解析。
有没有人有这个问题,并有修复或解决?
谢谢。
感谢您的回应,迈克。我通过让代码恢复到jQuery在1.4之前使用的基于eval的JSON解析方法,解决了这个问题。一旦将应用程序移至.NET 4.0,我将期待撤消这一更改。 – 2010-03-11 20:04:22
.NET 3.5(用于.NET Framework 3.5 SP1的ADO.NET数据服务更新 - 刷新)存在此问题的热修复。看到这个:http://blogs.msdn.com/b/astoriateam/archive/2010/05/08/ado-net-data-services-update-for-net-framework-3-5-sp1-refresh.aspx – Kamarey 2011-11-10 09:49:57