我有一类具有用DataMember
装饰的属性的类,该属性已将JSON序列化到其中,然后再次反序列化回JSON。属性之一的名称不正确,因此在反序列化期间无法正确设置该值。我可以重命名可解决问题的属性,但是我想确保序列化特别以原始名称继续(以防止对消费者造成更改),而反序列化使用新名称。
我已经研究了[Newtonsoft.Json.JsonProperty("name")]
属性,但是它为序列化和反序列化而重命名,而我正在寻找单向的东西。
似乎我需要创建一个自定义JsonWriter
,该自定义变量可以采用可以在WritePropertyName
期间应用的新名称的参数。问题是,我不知道如何/是否可以将其与所需属性上的属性连接起来。我尝试创建一个可以在属性上指定的自定义JsonConverter
,但这似乎不是正确的方法,因为在调用{{1}时我仍在使用默认JsonWriter
}。也许尽管我用这种方法使错误的树陷入困境,但解决方案却要简单得多。