在我的C#代码中,我试图反序列化一个具有数百个属性(复杂的、基本的和派生的)的JSON,并且我遇到了一个错误
但是,是否有一种简单的方法可以知道JSON或Result_TYPE
我尝试查看异常的
例如:我的JSON
我正在使用
Cannot convert null to a value type.
虽然最终通过手动故障排除我知道了哪个属性引起了问题。但是,是否有一种简单的方法可以知道JSON或Result_TYPE
属性或属性
(一次性),导致了这个问题?我尝试查看异常的
详细窗口
,但我只能知道数据类型
。在我的情况下,它是null
试图转换为boolean
,但找不到属性名称。例如:我的JSON
{
"customerData":
{
//... other json data
"someClass":{
"someClassProp1":"prop1Value",
"someClassProp2":"prop2Value"
},
"isExistData":null,
"someOtherClass":null
//... some other json data
}
}
并且Result_TYPE是:
Public class CustomerData
{
// Other properties
public SomeClass someClass:
public bool isExistData;
public SomeOtherClass someOtherClass:
// some Other properties
}
我正在使用
JavaScriptSerializer().Deserialize<T>(jsonString);
。在上面的例子中,我怎么知道属性isExistData
会导致反序列化错误,因为属性类型是boolean
而传入的数据是null
。[当然,除了手动调试外,可能还有数百个属性]。是否有更好的方法来定位确切的属性?
isExistData
是一个值类型,不能为 null... - Daniel A. WhiteJavaScriptSerializer
或其他哪个选项,在运行时定位有问题的属性? - anoop