我有一个要序列化为 JSON 然后反序列化的对象。
其中一个属性的结构已更改,现在反序列化崩溃,所以我现在需要忽略对该属性的反序列化。
我可以使用 [JsonIgnore, JsonProperty(Required = Required.Default)]
完全忽略该属性,但这也忽略了序列化中的属性 - 它需要保留以便不会丢失数据,即使如果此时没有连载。
最佳答案
这里有一个答案,虽然有点旧:https://stackoverflow.com/a/31732029/12431728但是,它对我来说似乎仍然可行,我不知道有更好/不同的方法来做到这一点。该答案建议使用 JsonIgnore 标记真实属性并创建“仅获取代理属性”。
然后它继续建议创建自定义 ContractResolver,如果您需要为许多属性提供此功能(也称为可重用解决方案)。
关于C# JSON.NET 如何忽略反序列化中的属性而不是序列化中的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59042162/