首页 > 解决方案 > 反序列化时如何将“序列化默认值”设置为“是”?

问题描述

我有以下内容,但是 json 字符串有一些空数组,没有返回为空。我如何设置该选项值以返回无论如何?

vat det =   JsonConvert.DeserializeObject<RootObject>(json, "does option setting go here")  

标签: c#jsondeserialization

解决方案


有一个叫做 JsonSerializerSettings 的类,可以在其中设置这些设置。然后可以在 json 字符串之后将这些设置与 DeserializeObject 一起传递。您要查找的设置称为 DefaultValueHandling,这将是设置中具有多个设置的枚举器。要查看这些设置的可能性,请参阅他们的文档

您的代码将如下所示:

        var result = JsonConvert.DeserializeObject<RootObject>("json string", new JsonSerializerSettings
        {
            DefaultValueHandling = DefaultValueHandling.Ignore
        });

推荐阅读