当使用JSON.NET TypeHandling进行json反序列化时,是否有一种方法可以自定义它用于类型的属性名称以及用于引用哪个类的名称?JSON.NET自定义类型处理
我正在使用外部api我无法控制哪个返回此风格的json。
[{
"type": "comment",
"message": "This is a comment",
"user": "Mike"
},
{
"type": "like",
"user": "Matt"
}]
而不是“$ type”是否有办法告诉JSON.NET看“类型”?似乎在JsonObject上也应该有一个“TypeName”属性,因为它当前正在寻找完全合格的C#类名称。
这个问题是严格参照TypeHandling功能:http://www.newtonsoft.com/json/help/html/SerializeTypeNameHandling.htm
你需要做一个JsonConverter处理这个。请参阅[使用json.net反序列化不使用类型信息的多态json类](http://stackoverflow.com/q/19307752/10263) –
是的,它似乎是目前唯一的解决方案。实际上,TypeHandling似乎可以在这里使用更多支持的钩子。 – MrMagee