Вопрос по c#, json, json.net – Сериализация enum как строки в JSON.NET с использованием атрибутов

8

Я хочу сериализовать enum как строку, используя JSON.NET, используя атрибуты, подобные[JsonIgnore]

Пример класса:

<code>enum Gender { Male, Female }
class ABC
{
    public Gender { get; set; }
}
</code>

Если я сериализую это с помощью JSON.NET:

<code>var a = new ABC();
var str = JsonConvert.SerializeObject(a);
</code>

str установлен в{Gender:0} и я бы предпочел{Gender:Male}.

@MiMo Я обновил свой вопрос, чтобы прояснить его. Пожалуйста посмотри shashwat
Я не совсем понимаю, что это такое. это - можете ли вы описать более подробно, чего вы пытаетесь достичь? MiMo

Ваш Ответ

1   ответ
13

[JsonConverter(typeof(StringEnumConverter))], Должен делать то, что вы хотите.

Edit: http://james.newtonking.com/projects/json/help/html/T_Newtonsoft_Json_Converters_StringEnumConverter.htm предоставляет некоторую информацию.

Похожие вопросы