我可以在C#中反序列化包含0.0的JSON字符串吗?

我从Web服务返回的JSON有一个错误表示为0.0的整数。 我的反序列化代码如下所示:

var serializer = new JsonSerializer(); var ret = serializer.Deserialize(jsonTextReader); 

我收到这样的错误:

输入字符串’0.0’不是有效整数。

我的问题是,有没有办法指定一个不太严格的反序列化方法,以便我可以解析这个字符串?

编辑:Web服务没有返回架构,所以我不知道为什么反序列化器试图将其转换为int而不是float或double。

我会说你应该继续在Json上创建你的课- > C#

 var o = (JObject)serializer.Deserialize(myjsondata); 

您可以使用C#动态类型来简化操作。 这种技术也使得重新分解更简单,因为它不依赖于魔术字符串。 使用JsonConvert.DeserializeObject()将此字符串反序列化为动态类型,然后在C#中以通常的方式访问其属性。

我不知道你为什么会这样

输入字符串’0.0’不是有效整数。

因为如果你没有任何Json数据,它应该保留为null,你不应该有这个问题