加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

数组 – 如何在使用JSON.NET中的List属性进行序列化期间将null J

发布时间:2020-12-16 19:47:40 所属栏目:百科 来源:网络整理
导读:目前我有JSON,它通过HTTP调用进入或存储在数据库中,但在服务器处理期间,它们被映射到C#对象. 这些对象具有public List int等属性. MYARRAY. 当JSON包含MyArray:null时,我希望结果属性为空List T而不是空列表 T属性. 目标是该对象将“重新序列化”为JSON作为
目前我有JSON,它通过HTTP调用进入或存储在数据库中,但在服务器处理期间,它们被映射到C#对象.

这些对象具有public List< int>等属性. MYARRAY.

当JSON包含MyArray:null时,我希望结果属性为空List< T>而不是空列表< T>属性.

目标是该对象将“重新序列化”为JSON作为MyArray:[],因此要么保存到数据库,要么通过HTTP作为空数组而不是null响应.

这样,无论如何,C#类基本上为任何List< T>清理和强制执行空数组.否则将为null的属性并导致浏览器端代码中的内容中断(例如:无法读取null的属性’length’).

有没有一种方法,在序列化/反序列化期间,我可以有任何与List< T>配对的空值.属性变成空数组而不是?

如果空列表为null,则总是可以延迟加载空列表.

要么

在JsonDeserializer上使用NullValueHandling选项.

var settings = new JsonSerializerSettings();
settings.NullValueHandling = NullValueHandling.Ignore;

return JsonConvert.DeserializeObject<T>(json,settings);

http://james.newtonking.com/json/help/index.html?topic=html/SerializationSettings.htm

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读