Quiero deserializar enumeraciones a su representación de cadenas y viceversa con json.net. La única manera de que pudiera averiguar para contar el marco de aplicar su StringEnumConverter
es para anotar las propiedades en cuestión así:Cómo decirle a Json.Net globalmente que aplique StringEnumConverter a todas las enumeraciones
[JsonConverter(typeof(StringEnumConverter))]
public virtual MyEnums MyEnum { get; set; }
Sin embargo, en mi caso de uso, sería mucho más conveniente para configurar json.net globalmente de manera que todas las enumeraciones se (de) serialicen usando el StringEnumConverter
, sin la necesidad de anotaciones adicionales.
¿Hay alguna manera de hacerlo, p. con la ayuda de la costumbre JsonSerializerSettings
?
Intenté configurar esto en mi global.asax.cs en 'GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings'pero no funcionó. ¿Alguna idea de por qué podría ser? – amhed
¿Hay alguna forma de minúsculas para el nombre del campo? El indicador CamelCaseText está codificado en la clase y no veo una manera de utilizar una estrategia de carcasa diferente. – mikebridge
@mikebridge ¿Has encontrado una solución para esto? También busco la manera de establecer el nombre de cada opción enum (o usar minúsculas). – Timm