要解析类似以下如此数据:
{"title":1,"userid":1734,"list":[{"s_id":"3"}],"tokenlist":[{"s_id":"3","token":"173899|6.80b926c2778fc1aea416c90e800b8623.2592000.1348992000-261351411","token_secret":"173899|0.ny8z8q4KgpkzST3J5xw4kA5kRr2R230l.261351411","u_id":"261351411"}],"silencetime":{"start_time":"09:00","end_time":"22:00"},"version":10}
获得这些数据的代码如下:private void GetResponseCallback(IAsyncResult asynchronousResult)
{
    try
    {
        HttpWebRequest request = (HttpWebRequest)asynchronousResult.AsyncState;
        HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(asynchronousResult);
        Stream streamResponse = response.GetResponseStream();
        StreamReader streamRead = new StreamReader(streamResponse);
        resData = streamRead.ReadToEnd();
        statusCode = response.StatusCode;
        streamResponse.Close();
        streamRead.Close();
        ProcessResponseData();
    }
    catch (Exception ee)
    {
        errorAsync = ee;
    }
}我在解决空间里面添加了一个名为Json.cs的类,代码如下:using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;  namespace HHP.json
{
    public class Json
    {
        public string title { get; set; }
        public string userid { get; set; }
        public string list { get; set; }
        public string tokenlist { get; set; }
        public string silencetime { get; set; }
        public string version { get; set; }
    }
    class Info
    {
        public Json json { get; set; }
    }  
    
}想要用json.Net解析json数据并查看解析的结果,接下来该怎么做呢?

解决方案 »

  1.   

    public class Json
        {
            public string title { get; set; }
            public string userid { get; set; }
            public string list { get; set; }
            public string tokenlist { get; set; }
            public string silencetime { get; set; }
            public string version { get; set; }
        }这个类无法匹配
    {"title":1,"userid":1734,"list":[{"s_id":"3"}],"tokenlist":[{"s_id":"3","token":"173899|6.80b926c2778fc1aea416c90e800b8623.2592000.1348992000-261351411","token_secret":"173899|0.ny8z8q4KgpkzST3J5xw4kA5kRr2R230l.261351411","u_id":"261351411"}],"silencetime":{"start_time":"09:00","end_time":"22:00"},"version":10}给出的json字符串是list 和 tokenlist都是一个数组
      

  2.   

    最简单的对应关系的public class JsonData
        {
            public string title
            {
                get;
                set;
            }        public string userid
            {
                get;
                set;
            }        public List<Item> list
            {
                get;
                set;
            }        public List<TokenItem> tokenlist
            {
                get;
                set;
            }        public SilenceTime silencetime
            {
                get;
                set;
            }        public int version
            {
                get;
                set;
            }        
        }    public class Item
        {
            public string s_id
            {
                get;
                set;
            }
        }    public class TokenItem
        {
            public string s_id
            {
                get;
                set;
            }        public string token
            {
                get;
                set;
            }        public string token_secret
            {
                get;
                set;
            }        public string u_id
            {
                get;
                set;
            }
        }    public class SilenceTime
        {
            public string start_time
            {
                get;
                set;
            }        public string end_time
            {
                get;
                set;
            }
        }
      

  3.   

    谢谢,获取网站返回值的代码如下:private void GetResponseCallback(IAsyncResult asynchronousResult)
    {
        try
        {
            HttpWebRequest request = (HttpWebRequest)asynchronousResult.AsyncState;
            HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(asynchronousResult);
            Stream streamResponse = response.GetResponseStream();
            StreamReader streamRead = new StreamReader(streamResponse);
            resData = streamRead.ReadToEnd();
            statusCode = response.StatusCode;
            streamResponse.Close();
            streamRead.Close();
            ProcessResponseData();
        }
        catch (Exception ee)
        {
            errorAsync = ee;
        }
    }返回值在resData里存着,我要在streamRead.Close();加句什么样的代码才能将resData按照JsonData类转换成Json格式的呢?
      

  4.   

    咦,为什么要在streamRead.Close();后面进行处理而不是在resData = streamRead.ReadToEnd();后面进行处理呢?