我有这个JSON对象,我使用适当的类将C#反序列化为变量。
{"cmd": "test","cache": [{"cmd": "test","gw": [{"id": "123456"}],"data": "some_data"}]}
如何获得" id"的价值?这是在" gw"对象,里面是"缓存"?
Bellow是我的反序列化课程。
public class Gw
{
public string id { get; set; }
}
public class Cache
{
public string cmd { get; set; }
public List<Gw> gw { get; set; }
public string data { get; set; }
}
public class RootObject
{
public string cmd { get; set; }
public List<Cache> cache { get; set; }
}
修改
object model = JsonConvert.DeserializeObject<RootObject>(json);
如果我尝试:
string myID = model.cache[0].gw[0].id;
string myID2 = model.cache.First().gw.First().id;
我收到此消息:&#39; object&#39;不包含&#39;缓存&#39;的定义没有扩展方法&#39;缓存&#39;接受类型&#39;对象&#39;的第一个参数。可以找到(你错过了使用指令或程序集引用吗?)
答案 0 :(得分:0)
RootObject model = JsonConvert.DeserializeObject<RootObject>(text);
string myID = model.cache[0].gw[0].id;