1

我想将枚举序列化为字符串,JSON.NET但我希望Enum在没有字符串引号的情况下序列化值

    [JsonConverter(typeof(StringEnumConverter))]
    enum Gender { Male, Female }

    class Test
    {
        public Gender { get; set; }
    }

现在我得到的输出为{ "Gender": "Male" }

{ "Gender": Male }  //Male is without quotes
4

2 回答 2

2

这是不可能的,因为该 json 将无效。您可以在https://jsonlint.com上检查有效 json 的外观。

所有 JSON Convert 库都遵循有效的 json 结构,您始终可以编写自己的 json 转换器来执行此操作,但我根本不建议这样做。

于 2019-07-19T08:32:50.370 回答
0

这是不可能的(并且真的不推荐),因为它不尊重 JSON 语法。

见:[ https://www.w3schools.com/js/js_json_syntax.asp][1]

在 JSON 中,值必须是以下数据类型之一:

字符串 数字 对象(JSON 对象) 数组 布尔型 null

于 2019-07-19T08:34:56.823 回答