2013-05-15 39 views
-2

我有一个JSON字符串象下面这样:如何反序列化JSON多种类型动态地在C#

{ “错误”: “XXXX”, “数据”:整型 {...等复杂的json对象} }

我不知道什么时候从数据字段返回int或其他json字符串,以及如何反序列化呢?

当数据类型是对象或动态时,真正的反序列化数据类型是使用JavaScriptSerializer.Deserialize(string json)的int或Dictionary。

使用Json.Net时,真正的反序列化数据类型是Int64或JContainer。

有没有一种优雅的方式来解决这个问题?我不认为反思是一个好方法。

+0

看看这篇文章,请:http://stackoverflow.com/questions/9145667/how-to-post-json-to-the-server/10027534#10027534 这里是我提一下库这篇文章,我写它来帮助我反序列化/序列化json请求/响应。 https://github.com/ademargomes/JsonRequest – Ademar

回答

1

您可以创建对象包装器并将数据类型标识符置于此包装器的第一个字段。