使用编码的动作结果JsonResult
在序列化中似乎过于冗长。例如:
{"foo":"bar","list":["a","b"],"map":{"a":1,"b":2,"c":3}}
JavaScript 似乎对这个较短的版本非常满意:
{foo:"bar",list:["a","b"],map:{a:1,b:2,c:3}}
所以这个问题有两个方面:
假设我所有的标签都是有效的 JavaScript 标识符,是否有前者更好的原因?- 我可以强制 ASP.NET MVC 框架使用这种更短的语法对我的消息进行编码吗?
我正在编写一个非常重 AJAX 的应用程序,并计算出我可以节省 15% 到 20% 的消息大小。在许多情况下,是否将响应放入单个 TCP 数据包中会有所不同。即使不考虑性能,在我每月的带宽账单方面减少这么多也是一个福音。
编辑
正如贾斯汀指出的那样,根据 JSON 标准需要引号,但我不需要它们在浏览器中用于纯 JavaScript 使用。我可以强制 .NET Web 框架以比编写自己的 JSON 序列化程序更简单的方式删除引号吗?