目前我有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
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。