【问题标题】:C#/JSON What to do with a NULL value returned from a DB query? [duplicate]C#/JSON 如何处理从数据库查询返回的 NULL 值? [复制]
【发布时间】:2016-03-25 16:40:11
【问题描述】:

情况:我正在构建一个查询数据库然后通过 JSON 返回结果的 Web API。

有几列被引入到表中,但尚未在其中填充数据。所以它们的值暂时是“NULL”。它不会总是这样,一些“遗留”数据可能包含“NULL”值。

当我收到包含“NULL”值的 JSON 响应时,它是空的。

({foo: , foo1: bar1})

所以我的问题是将“NULL”值传递回原始调用者的正确方法是什么?我可以通过各种方式检查“NULL”,然后返回一个空字符串或“-1”作为整数,但我想知道除了首先没有“NULL”之外,正确的方法是什么。

【问题讨论】:

  • 如果您包含一些代码可能会有所帮助...
  • 您可以使用 Json.Net 装饰器忽略空值:[JsonProperty( NullValueHandling = NullValueHandling.Ignore )]。
  • @dman2306 添加代码有什么帮助?这是一个关于编程实践的问题。代码工作正常。我想知道是否有更好的方法来处理 JSON 中的“null”值,而不是传回一个空字符串。有标准吗?
  • @jpgrassi 我不一定想忽略它。我想将密钥传回是否有空值,但我希望能够通知用户该列有一个“空”/空值。就像我说的那样,我可以使用空字符串或 -1 来执行此操作,但这是将空值传递回用户的标准吗?

标签: c# json asp.net-web-api


【解决方案1】:

这里有一个关于如何处理 JSON 中的空值的讨论:

Representing null in JSON

我还建议您注意您知道将始终为空或您不会使用的额外字段(正如您所说的“遗留”数据)。它们将依赖于您的 JSON 的最终大小,因此如果您确定它们不会被使用,只需删除它们即可。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-17
    • 1970-01-01
    • 1970-01-01
    • 2011-05-05
    • 2017-01-27
    • 1970-01-01
    • 2018-05-13
    相关资源
    最近更新 更多