怎样用C#把JSON数据转换为list或数组

 我来答
xiangjuan314
2016-01-19 · TA获得超过3.3万个赞
知道大有可为答主
回答量:2.9万
采纳率:0%
帮助的人:2895万
展开全部
Json数据格式:
var jsontext = "[{"id":"815bb899-8d70-4745-b799-7e68840a2b34","text":"设计","pid":"57eb2d57-9384-4d9f-a399-2c228fea81c2"},{"id":"4c76b72c-35da-4749-893c-5c7dde9431e6","text":"市政工程","pid":""}]";

/// <summary>
/// Json数据转数组
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="jsonText"></param>
/// <returns></returns>
public List<T> JsonToList<T>(string jsonText)
{
List<T> list = new List<T>();
DataContractJsonSerializer _Json = new DataContractJsonSerializer(list.GetType());
byte[] _Using = System.Text.Encoding.UTF8.GetBytes(jsonText);
System.IO.MemoryStream _MemoryStream = new System.IO.MemoryStream(_Using);
_MemoryStream.Position = 0;
return (List<T>)_Json.ReadObject(_MemoryStream);
}

public class CheckedTreeInfo
{
/// <summary>
/// 父节点Id
/// </summary>
public string pid { get; set; }
/// <summary>
/// 节点Id
/// </summary>
public string id { get; set; }
/// <summary>
/// 节点名称
/// </summary>
public string text { get; set; }
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
I乐于助人I
2014-10-23 · TA获得超过395个赞
知道小有建树答主
回答量:272
采纳率:100%
帮助的人:134万
展开全部
                public static T JSONToObject<T>(string jsonText)
{
JavaScriptSerializer jss = new JavaScriptSerializer();
try
{
return jss.Deserialize<T>(jsonText);
}
catch (Exception ex)
{
throw new Exception("JSONHelper.JSONToObject(): " + ex.Message);
}
}

//JavaScriptSerializer为:System.Web.Script.Serialization.JavaScriptSerializer,注意添加引用,我觉得这个更好。

//使用的话:
//JsonResult<hzJsonApplicationInfo> appResult =JSONToObject<JsonResult<hzJsonApplicationInfo>>(你的json字符串);就行了。JsonResult、hzJsonApplicationInfo 是我定义的类,对应json字符串
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
理春冬s9
2014-10-23 · TA获得超过774个赞
知道小有建树答主
回答量:1063
采纳率:0%
帮助的人:455万
展开全部
c# json的反序列化
搜索一下有挺多的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式