如何使用ServiceStack JsonSerializer序列化Hashtable?

时间:2012-09-14 13:28:08

标签: c# json hashtable servicestack

我正在尝试使用ServiceStack Hashtable序列化JsonSerializer。但是,与Json.Net和内置JavaScriptSerializer不同,它返回DictionaryEntry的类型名称而不是值。

此代码:

Hashtable h = new Hashtable(){ { "A", 1 }, { "B", 2 } };

Console.WriteLine(JsonConvert.SerializeObject(h));
Console.WriteLine(new JavaScriptSerializer().Serialize(h));
Console.WriteLine(ServiceStack.Text.JsonSerializer.SerializeToString(h, typeof(Hashtable)));

返回:

{"A":1,"B":2}
{"A":1,"B":2}
["System.Collections.DictionaryEntry","System.Collections.DictionaryEntry"]

我做错了吗?

1 个答案:

答案 0 :(得分:3)

NuGet上的最新版ServiceStack.Text(v3.9.11 +)现在包括对Hashtable的支持。