multiple JsonProperty Name assigned to single property
c#, deserialization, json, json.net
Solution
A simple solution which does not require a converter: just add a second, private property to your class, mark it with `[JsonProperty("name2")]`, and have it set the first property:
public class Specifications
{
[JsonProperty("name1")]
public string CodeModel { get; set; }
[JsonProperty("name2")]
private string CodeModel2 { set { CodeModel = value; } }
}
Fiddle: https://dotnetfiddle.net/z3KJj5
Problem
I have two format of JSON which I want to Deserialize to one class. I know we can't apply two `[JsonProperty]` attribute to one property. Can you please suggest me a way to achieve this? ``` string json1 = @" { 'field1': '123456789012345', 'specifications': { 'name1': 'HFE' } }"; string json2 = @" { 'field1': '123456789012345', 'specifications': { 'name2': 'HFE' } }"; public class Specifications { [JsonProperty("name1")] public string CodeModel { get; set; } } public class ClassToDeserialize { [JsonProperty("field1")] public string Vin { get; set; } [JsonProperty("specification")] public Specifications Specifications { get; set; } } ``` I want `name1` and `name2` both to be deserialize to `name1` property of specification class.