我有一些工作代码:
String objstr = "{\"m_children\":[{\"m_children\":null,\"m_name\":\"child0\"},{\"m_children\":null,\"m_name\":\"child1\"}],\"m_name\":\"Root\"}";
byte[] byteArr = Encoding.ASCII.GetBytes(objstr);
MemoryStream ms = new MemoryStream(byteArr);
DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(Node));
Node obj = (Node)ser.ReadObject(ms);
在我解码之前,我必须知道字符串中包含的对象的类型。我想通过TCP管道发送一个用JSON编码的对象,而不必发送有关该对象的类型的额外信息。
答案 0 :(得分:1)
使用.NET 4.0,您可以使用动态对象。为什么不从另一个问题尝试这个解决方案:Deserialize JSON into C# dynamic object?
答案 1 :(得分:0)
其他信息:
http://www.codeproject.com/KB/IP/fastJSON.aspx
当这个库对JSON进行编码时,它会为完全自动的重新分析提供足够的信息。
这不适合我的目的,因为它包含一堆C#特定的信息,我们在这里使用跨语言。