我有以下代码:
return (DataTable)JsonConvert.DeserializeObject(_data, (typeof(DataTable)));
然后,我尝试:
var jsonSettings = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }; return (DataTable)JsonConvert.DeserializeObject<DataTable>(_data, jsonSettings);
返回行抛出错误:
{“将值\“ \”转换为类型’System.Double’时出错。“}
在线上有许多解决方案建议Class使用空值类型创建自定义,但这对我不起作用。我不能指望json是某种格式。我无法控制列数,列类型或列名。
Class
您可以提供设置来JsonConvert.DeserializeObject告诉它如何处理空值(在这种情况下,还有更多):
JsonConvert.DeserializeObject
var settings = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore, MissingMemberHandling = MissingMemberHandling.Ignore }; var jsonModel = JsonConvert.DeserializeObject<Customer>(jsonString, settings);