【问题标题】:Handling null strings and ints in Json在 Json 中处理空字符串和整数
【发布时间】:2009-02-09 23:20:50
【问题描述】:

JSON 忽略任何具有空值的参数。因此,当我使用 JsonConverter.ExportToString 创建字符串时,这些属性会丢失。此外,任何具有空值的整数都将替换为 -2147483648

当我尝试反序列化此字符串时,这会成为一个问题(我正在编写自己的反序列化器,而不是使用 Json.Import)

最好的处理方法是什么?

【问题讨论】:

    标签: asp.net json


    【解决方案1】:

    我不确定我是否理解了这个问题。 JSON 只是 javascript 的一个子集,具有 null 值的属性可以这样表示:

    {"property1": 1, "property2": null}
    

    在这种情况下,property1 是一个数字,值为 1,而property2 的值为 null。我不确定 Json.Import 和 JsonConverter.ExportToString 调用来自哪个库。无论如何,将空值分配给整数是典型的“强类型说话”。在 javascript 中,将 null 分配给数字(在 js 中没有整数之类的东西)只会使该变量不再是数字。

    所以也许你应该给我们更多的上下文:使用的库,你使用数据的语言(显然不是 javascript)。

    【讨论】:

    • +1 这绝对不是 JSON 约束的问题,而是产生 this JSON 的任何问题
    【解决方案2】:

    您能否使用空字符串,即“”而不是 null,并使用占位符数字,例如-2147483648 表示一个空整数值?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多