I've got a c# class that I am trying to correctly serialise using Newtonsoft.Json
. The property is an enumeration type and I wish the value to be serialised as the "lowercase version of the enumeration name". There is a JsonConverterAttribute
available for specifying this on the property and also a prewritten StringEnumConverter
but I need to specify the CamelCaseNamingStrategy
on that converter but I can't work out the syntax.
I've tried to assign it on the property itself:
public class C
{
[JsonConverter(typeof(StringEnumConverter),NamingStrategy=typeof(CamelCaseNamingStrategy))]
public ChartType ChartType { get; set; }
}
and I've also tried adding it similarly onto the enumeration type itself:
[JsonConverter(typeof(StringEnumConverter),NamingStrategy=typeof(CamelCaseNamingStrategy))]
public enum ChartType { Pie, Bar }
But the syntax is wrong. I can't find any examples of this in the Newtonsoft documentation.
The desired serialision would be: "ChartType":"pie"
or "ChartType":"bar"
Any ideas? Thanks.
camelCaseText
parameter used here has been marked obsolete. See newtonsoft.com/json/help/html/… – Pro