JSON.NET-序列化为其他名称

时间:2019-06-19 10:51:02

标签: json.net json-deserialization

我有一类具有用DataMember装饰的属性的类,该属性已将JSON序列化到其中,然后再次反序列化回JSON。属性之一的名称不正确,因此在反序列化期间无法正确设置该值。我可以重命名可解决问题的属性,但是我想确保序列化特别以原始名称继续(以防止对消费者造成更改),而反序列化使用新名称。

我已经研究了[Newtonsoft.Json.JsonProperty("name")]属性,但是它为序列化和反序列化而重命名,而我正在寻找单向的东西。

似乎我需要创建一个自定义JsonWriter,该自定义变量可以采用可以在WritePropertyName期间应用的新名称的参数。问题是,我不知道如何/是否可以将其与所需属性上的属性连接起来。我尝试创建一个可以在属性上指定的自定义JsonConverter,但这似乎不是正确的方法,因为在调用{{1}时我仍在使用默认JsonWriter }。也许尽管我用这种方法使错误的树陷入困境,但解决方案却要简单得多。

0 个答案:

没有答案