0

我有一本字典,它使用类作为键和值。对于这些类,我创建了 JsonConverters 以特定方式对它们进行序列化/反序列化。为了正确序列化字典,我使用了在https://newbedev.com/how-can-i-serialize-deserialize-a-dictionary-with-custom-keys-using-json-net找到的以下 JsonConverter 。

public class CustomDictionaryConverter<TKey, TValue> : JsonConverter
{
    public override bool CanConvert(Type objectType) => objectType == typeof(Dictionary<TKey, TValue>);

    public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        => serializer.Serialize(writer, ((Dictionary<TKey, TValue>)value).ToList());

    public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
        => serializer.Deserialize<KeyValuePair<TKey, TValue>[]>(reader).ToDictionary(kv => kv.Key, kv => kv.Value);
}

这确实有效,但序列化的字典条目采用这种形式

{“键”:“键类”,值”:“值类”}

其中 KeyClass 和 ValueClass 是键和值类的序列化输出。我想要的是让每个条目看起来像这样

“键类”:“值类”

我该怎么做呢?

4

0 回答 0