为什么 class 字段会导致 JSON 响应数据为空?
Why class Fields result in Empty JSON response data?
我的 Web api 控制器中有一个 Action returns SampleClass 的一个实例。
当 SampleClass 有 Fields 时,Action 的结果是这样的:{}
并且当我用 Properties 替换我的字段时,结果按预期填充 Json。
谁能解释为什么会这样?
对于响应序列化,您的应用程序可能配置为使用 System.Text.Json
,默认情况下会忽略此处所述的字段:link
但是您可以通过添加相应的属性使字段可序列化:another link
JSON 默认情况下,序列化仅适用于属性,这是选择使用 Fields 或 Properties[=17 的主要原因之一=]
作为 C# 开发人员,我假设您已阅读 Why Properties Matter (by the illustrious Jon Skeet)
我的 Web api 控制器中有一个 Action returns SampleClass 的一个实例。 当 SampleClass 有 Fields 时,Action 的结果是这样的:{}
并且当我用 Properties 替换我的字段时,结果按预期填充 Json。 谁能解释为什么会这样?
对于响应序列化,您的应用程序可能配置为使用 System.Text.Json
,默认情况下会忽略此处所述的字段:link
但是您可以通过添加相应的属性使字段可序列化:another link
JSON 默认情况下,序列化仅适用于属性,这是选择使用 Fields 或 Properties[=17 的主要原因之一=]
作为 C# 开发人员,我假设您已阅读 Why Properties Matter (by the illustrious Jon Skeet)