使用不在开头的关键字反序列化$type外部 json 字符串



我正在反序列化一个外部 json 字符串(因此无法控制结构(。外部 json 使用"序列化程序"作为鉴别器。我正在按照此处的建议使这符合 json.netvar json = str.Replace("""serializer"": "", ""$type": "");:JSON.Net - 将$type字段更改为另一个名称?

问题是,在外部 json 字符串中,"序列化程序"不在开头,而是所有属性都按字母顺序排序,json.net 反序列化时引发异常,因为它只识别"$type"关键字,如果它是字符串中的第一个属性。

知道我如何反序列化它吗?

正如用户 dbc 建议的那样,在设置中使用 MetadataPropertyHandling.ReadAhead 将解决此问题。

更多内容: Newtonsoft JSON.net 反序列化错误,其中 JSON 中的字段更改顺序

相关内容

最新更新