MVC4 OData序列化长到JSON字符串

时间:2013-09-17 09:31:35

标签: c# asp.net-mvc json asp.net-mvc-4 odata

我正在使用.NET MVC4中包含的OData beta实现,我遇到了一个奇怪的问题:所有long值都被序列化为JSON字符串,而不是像int和{float {1}} s,为常规数字。

由于Javascript should support Int64值是否有办法仅为long值添加自定义OData序列化方法?

1 个答案:

答案 0 :(得分:2)

请注意,JSON表示它至少应该是64位双精度数 - 所以类似于C ++中的double。 double的问题在于它的存储方式并不意味着它可以代表64位整数的全部范围 - 这就是多长时间。简而言之,并非所有长有效值都可以写为JSON数字,而不会因JSON兼容解析器解析而导致精度损失。

正是出于这个原因,OData总是将长值写为字符串。