string jsondata = "{"status":0,"message":"成功","results":[{"orderstatus":0,"orderid":" HG20160519105755755251244","ordermsg":"提交成功"},{"orderstatus":2,"orderid":"HG20160519105755755251321","ordermsg":"无效的订单产品"}]} ";
如何反序列化
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
/// <summary>
/// JSON文本转对象,泛型方法
/// </summary>
/// <typeparam name="T">类型</typeparam>
/// <param name="jsonText">JSON文本</param>
/// <returns>指定类型的对象</returns>
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);
}
}
class JsonResult
{
public int status { get; set; }
public string message { get; set; }
public List<Result> results { get; set; }
}
class Result
{
public int orderstatus { get; set; }
public string orderid { get; set; }
public string ordermsg { get; set; }
}
JsonResult res = JsonHelper.JSONToObject<JsonResult>(jsondata);
Console.WriteLine(res.results.Count);
//输出 2
注意 你上面的Json字符串中有个逗号是中文的...记得改成英文的...
######JObject jsonObj= (JObject)JsonConvert.DeserializeObject(jsondata);