当前位置: 代码迷 >> Web Service >> 解析多条数据的json解决思路
  详细解决方案

解析多条数据的json解决思路

热度:227   发布时间:2013-01-02 13:08:44.0
解析多条数据的json
[{"id":1,"classify":"水分","remark":"","nutritionName":"","nfcId":1},{"id":2,"classify":"蛋白质","remark":"","nutritionName":"氨基酸","nfcId":2},{"id":3,"classify":"糖","remark":"","nutritionName":"","nfcId":3},{"id":4,"classify":"维生素","remark":"","nutritionName":"","nfcId":4},{"id":5,"classify":"无机盐","remark":"","nutritionName":"","nfcId":5},{"id":6,"classify":"油脂","remark":"","nutritionName":"","nfcId":6},{"id":7,"classify":"蛋白质","remark":"","nutritionName":"赖氨酸","nfcId":2}]

这个json怎么解析??????
------解决方案--------------------
首先,可以定义一个DataContract,如下
  [DataContract]
    public class DataContruct
    {
        [DataMember]
        internal string total;

        [DataMember]
        internal List<rootData> root;
    }

    [DataContract]
    public class rootData
    {
        [DataMember]
        internal string ZFLSH;

        [DataMember]
        internal string BMBH;


        [DataMember]
        internal string XMBH;

        [DataMember]
        internal string GZH;

        [DataMember]
        internal string XM;

        [DataMember]
        internal string JE;

        [DataMember]
        internal string ZFLB;

        [DataMember]
        internal string RQ;


        [DataMember]
        internal string BZ;

        [DataMember]
        internal string XTLB;

    }
然后这样解析,如下:
  MemoryStream stream = new MemoryStream();
            DataContractJsonSerializer ser2 = new DataContractJsonSerializer(typeof(DataContruct));
            StreamWriter wr = new StreamWriter(stream);
            wr.Write(Str_JsonData);
            wr.Flush();
            stream.Position = 0;
            Object obj = ser2.ReadObject(stream);
            DataContruct p2 = (DataContruct)obj;

            List<rootData> rdlist = p2.root;
            if (rdlist.Count() == 1)
  相关解决方案