1

我发现了一百万篇关于将 .NET 日期序列化为 json 的帖子。然而,我无法让其中任何一个正常工作。

到目前为止,这是我的序列化代码:

string javascriptJson = JsonConvert.SerializeObject(result, 
   new JavaScriptDateTimeConverter());
return Content(javascriptJson, "application/json");

这将返回一个包含正确 JSON 的未转义字符串,并且在浏览器中查看时看起来完全正确。(例如,日期看起来像: date: new Date(023198928) 就我有限的 javascript 技能而言,它应该是这样的)

但是,我无法让 JQuery 理解这一点,要么我得到一个普通的 javascript 字符串,要么它只是失败了,我想要反序列化的对象。

我已经尝试过 $.get 和 $.getJSON

想法?

4

2 回答 2

1

这些不是您正在寻找的方法...

jQuery.get()
检索与 jQuery 对象匹配的 DOM 元素之一。

jQuery.getJSON()
使用 GET HTTP 请求从服务器加载 JSON 编码的数据。

改用jQuery.parseJSON()
采用格式良好的 JSON 字符串并返回生成的 JavaScript 对象。

于 2013-07-02T11:04:41.657 回答
0

事实证明,即使我的服务的响应是有效的 javascript,它也不是有效的 Json。

您不能返回“{ date : new Date(24342) }”,因为我猜它会打开脚本注入。我恢复到标准的 .NET Json 序列化程序,并简单地解析了它返回的“\Date(343)\”。

于 2013-07-05T17:14:19.200 回答