Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用JSON.NET和生成的类反序列化元素_C#_Json - Fatal编程技术网

C# 使用JSON.NET和生成的类反序列化元素

C# 使用JSON.NET和生成的类反序列化元素,c#,json,C#,Json,我有一个json文件: [ { "as_of":"2012-08-31T15:31:55Z", "trends":[ { "name":"#GDTHATXX", }, { "name":"#UnMundoEnElQue", } ],

我有一个json文件:

    [
       {
          "as_of":"2012-08-31T15:31:55Z",
          "trends":[
             {
                "name":"#GDTHATXX",
             },
             {
                "name":"#UnMundoEnElQue",
             }
          ],
          "created_at":"2012-08-31T15:30:32Z",
          "locations":[
             {
                "name":"Globales",
                "woeid":1
             }
          ]
       }
    ]
和生成的类:

public class Trend
{
    public string name { get; set; }
}

public class Location
{
    public string name { get; set; }
    public int woeid { get; set; }
}

public class RootObject
{
    public string as_of { get; set; }
    public List<Trend> trends { get; set; }
    public string created_at { get; set; }
    public List<Location> locations { get; set; }
}
公共类趋势
{
公共字符串名称{get;set;}
}
公共类位置
{
公共字符串名称{get;set;}
public int woeid{get;set;}
}
公共类根对象
{
作为{get;set;}的_的公共字符串
公共列表趋势{get;set;}
在{get;set;}处创建的公共字符串
公共列表位置{get;set;}
}
我可以像这样反序列化RootObject中的元素:

 List<RootObject> values = JsonConvert.DeserializeObject<List<RootObject>>(Text);
            lvMain3.ItemsSource = values;
List values=JsonConvert.DeserializeObject(文本);
lvMain3.ItemsSource=值;

但如何从“趋势”或“位置”反序列化元素呢。谢谢你的帮助

内部元素正在与RootObject一起反序列化,因此在执行

List<RootObject> values = JsonConvert.DeserializeObject<List<RootObject>>(Text);

或者类似的东西。

他们不是被反序列化了吗?来自RootObject反序列化的元素,但是我写的列表它不反序列化。如果反序列化有效,为什么不调用
值[0]。趋势
值[0]。位置
values.First().trends.First().name;