【发布时间】:2015-07-02 02:04:23
【问题描述】:
所以我定义
public class Globals
{
public List<object> var { get; set; }
}
我发送的json是这样的
{"var":[{"test1":"1","test2","2","test3","3"}],"morejson":"blahblahblah}
假设我现在有了这个,我们假设 AppendTextBox 正在单独的线程中编写一个文本框
void getmedata()
{
var commands = JsonParser.Deserialize<Globals>(json);
AppendTextBox(commands.description[0].ToString());
AppendTextBox(commands.description.Count.ToString());
}
AppendTextBox(commands.description.Count.ToString()); 工作并显示计数
但是,我似乎无法让它更好地按键打印值。它的设置方式目前提供以下输出
System.Collections.Generic.Dictionary`2[System.String,System.Object]`
有什么建议吗?
【问题讨论】:
-
为什么没有强类型对象而不是
object项目的集合? -
好问题。这是因为 json 来自另一台机器,它有可能是 1,2 或 3 项。
-
如果您将格式更改为:{"var":[{"test1":"1"},{"test2","2 "},{"test3","3"}],"morejson":"blahblahblah} 然后将其作为对象数组引入并从那里执行 ToDictionary。