使用Newtonsoft反序列化时,当我的字符串内容和实体类不一致时,怎么进行判断呢,Newtonsoft在反序列化时不会进行报错,只有字符串内容不符合Json格式才会报错,我想要在字符串内容符合字符串格式但是和实体类不一致时也要进行报错,怎么处理?
例如,实体类如下:
public class Person
{
public int Age { get; set; }
}
json字符串如下:
string content =
"{
"NavX": 2
}"
进行反序列化
var dataTem = Newtonsoft.Json.JsonConvert.DeserializeObject<Person>(content);
此时正常返回一个空Preson实体类,但不会进行报错,我想要报错,怎么实现呢?
添加 MissingMemberHandling.Error
设置可以解决
using Newtonsoft.Json;
string content = """
{
"NavX": 2
}
""";
var settings = new JsonSerializerSettings
{
MissingMemberHandling = MissingMemberHandling.Error,
};
var dataTem = JsonConvert.DeserializeObject<Person>(content, settings);
public class Person
{
public int Age { get; set; }
}
收到,感谢!