我有以下格式不正确的 json,缺少属性值,我想要 JSON。转换为在反序列化时抛出错误,但在反序列化为强类型对象 Person 时,phoneNumber 被替换为null
,而对于动态类型,phoneNumber 的值被替换为{}
,我已经尝试了各种 JsonSerializerSettings,但似乎无助于抛出错误,有没有办法做到这一点
var json= {
"firstName": "joe",
"lastName": "doe",
"phoneNumber": ,
"email": "joe.doe@test.com"
}
JsonConvert.DeserializeObject<Person>(json);
JsonConvert.DeserializeObject<Dynamic>(json);
这可能是一些解决方法,但您可以使用需要值的属性来标记它。根据您的具体情况,哪种可能适合您,也可能不适合您:
public class Videogame
{
[JsonProperty(Required = Required.Always)]
public string Name { get; set; }
[JsonProperty(Required = Required.AllowNull)]
public DateTime? ReleaseDate { get; set; }
}