using System.Text.Json.Serialization;
public static void Main()
string jsonOne = @"{ ""values"": ""abc"" }";
TestClass jsonObjOne = JsonSerializer.Deserialize<TestClass>(jsonOne);
Console.WriteLine(JsonSerializer.Serialize(jsonObjOne.StringValue));
Console.WriteLine(JsonSerializer.Serialize(jsonObjOne));
Console.WriteLine("---");
string jsonTwo = @"{ ""values"": [1,2,3] }";
TestClass jsonObjTwo = JsonSerializer.Deserialize<TestClass>(jsonTwo);
Console.WriteLine(JsonSerializer.Serialize(jsonObjTwo.IntegerValues));
Console.WriteLine(JsonSerializer.Serialize(jsonObjTwo));
[JsonPropertyName("values")]
public JsonElement? values { get; set; } = null;
public string StringValue
if (values.HasValue && values.Value.ValueKind == JsonValueKind.String)
return values.Value.ToString();
public int[] IntegerValues
if (values.HasValue && values.Value.ValueKind == JsonValueKind.Array)
return values.Value.Deserialize<int[]>();