【发布时间】:2010-10-11 00:28:12
【问题描述】:
我在使用 DataContractJsonSerializer 类反序列化混合类型的 JSON 数组时遇到问题。我花了很多时间寻找解决方案无济于事,所以我想我会继续在这里问。
基本上,我得到一个如下所示的 JSON 字符串。我想让数组反序列化为一个列表,其中位置 0 有一个 Int32,位置 1 有一个字符串,位置 2 有一个我的自定义类的实例。
[
2,
"Mr. Smith",
{
"num":169,
"name":"main street",
"state":66
}
]
如果我像这样创建一个序列化:
DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(List<object>))
我实际上在位置 0 处得到一个 Int32,在位置 1 处得到一个 String。但是在位置 2 处我只得到一个空对象。
有谁知道我正在尝试做的事情是否可能?我无法控制我正在使用的 JSON 的结构。如果可能,我想在不使用第三方程序集的情况下完成此操作。
【问题讨论】:
标签: c# wcf datacontractjsonserializer