zoukankan      html  css  js  c++  java
  • C#将Json字符串反序列化成List对象类集合

    C#Json字符串反序列化成List对象类集合

     

    using System.IO;

    using System.Web.Script.Serialization;

    using System.Runtime.Serialization.Json;

    public static List<T> JSONStringToList<T>(this string JsonStr)

        {

            JavaScriptSerializer Serializer = new JavaScriptSerializer();

            List<T> objs = Serializer.Deserialize<List<T>>(JsonStr);

            return objs;

        }

     

        public static T Deserialize<T>(string json)

        {

            T obj = Activator.CreateInstance<T>();

            using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(json)))

            {

                DataContractJsonSerializer serializer = new DataContractJsonSerializer(obj.GetType());

                return (T)serializer.ReadObject(ms);

            }

    }

    好了,我们来测试下

    string JsonStr = "[{Name:'苹果',Price:5.5},{Name:'橘子',Price:2.5},{Name:'柿子',Price:16}]";

    List<Product> products = new List<Product>();

    products = JSONStringToList<Product>(JsonStr);

    //Response.Write(products.Count());

    foreach (var item in products)

    {

    Response.Write(item.Name + ":" + item.Price + "<br />");

    }

    public class Product

    {

    public string Name { getset; }

    public double Price { getset; }

    }

    结果:

    苹果:5.5
    橘子
    :2.5
    柿子:16

    //转载于http://www.rczjp.cn/HTML/110126/20110226120213.html

  • 相关阅读:
    第八章 多线程编程
    Linked List Cycle II
    Swap Nodes in Pairs
    Container With Most Water
    Best Time to Buy and Sell Stock III
    Best Time to Buy and Sell Stock II
    Linked List Cycle
    4Sum
    3Sum
    Integer to Roman
  • 原文地址:https://www.cnblogs.com/leidc/p/2373072.html
Copyright © 2011-2022 走看看