在从JSON到VB.NET的列表中反序列化

在从JSON到VB.NET的列表中反序列化,json,vb.net,parsing,webrequest,Json,Vb.net,Parsing,Webrequest,我使用HTTPrequest和json中的一组数组。 我想在VB.NET中的列表中对其进行分析,以访问: List.index(0).messages.id List.index(0).messages.previous List.index(0).messages.last_update List.index(0).messages.html 感谢您的帮助,我希望您理解我的问题如果您将json作为数组获取,为什么不将其反序列化为数组呢?然后可以使用.ToList()方法将数组转换为列表 你的

我使用HTTPrequest和json中的一组数组。 我想在VB.NET中的列表中对其进行分析,以访问:

List.index(0).messages.id
List.index(0).messages.previous
List.index(0).messages.last_update
List.index(0).messages.html

感谢您的帮助,我希望您理解我的问题

如果您将json作为数组获取,为什么不将其反序列化为数组呢?然后可以使用
.ToList()
方法将数组转换为
列表

你的课程应该是:

public class Message
{
    public int id { get; set; }
    public int previous { get; set; }
    public int last_update { get; set; }
    public string html { get; set; }
}

public class RootObject
{
    public string robots { get; set; }
    public List<Message> messages { get; set; }
    public List<int> messageIds { get; set; }
    public string onlineUsers { get; set; }
    public string reverse { get; set; }
    public int lastrefresh { get; set; }
    public string motd { get; set; }
    public int numInChat { get; set; }
    public bool twelveHour { get; set; }
    public string _visitor_conversationsUnread { get; set; }
    public string _visitor_alertsUnread { get; set; }
}
公共类消息
{
公共int id{get;set;}
公共int-previous{get;set;}
public int last_update{get;set;}
公共字符串html{get;set;}
}
公共类根对象
{
公共字符串{get;set;}
公共列表消息{get;set;}
公共列表消息ID{get;set;}
公共字符串onlineUsers{get;set;}
公共字符串反向{get;set;}
公共int lastresh{get;set;}
公共字符串motd{get;set;}
public int numInChat{get;set;}
公共布尔十二小时{get;set;}
公共字符串_visitor_conversationsUnread{get;set;}
公共字符串_visitor_alertsUnread{get;set;}
}
您应该能够将完整的jSon反序列化到
RootObject
类中。要反序列化,我建议使用Newtonsoft.Json dll(可在Nuget上获得)

RootObject RootObject=JsonConvert.DeserializeObject(jsonString)

然后,您将能够按要求访问这些属性


我利用你的jSon生成了类

谢谢,这是一个很好的答案,但我已经自己解决了我的问题,我刚刚做了你的答案,