如何在mvc3控制器中获取json数组中的值
本文关键字:json 数组 获取 mvc3 控制器 | 更新日期: 2023-09-27 18:29:30
我有一个包含Json结果的结果。Json结果如下。
<string xmlns="http://tempuri.org/">
{"Method":"LOGIN_AUTHENTICATE Start :8/29/2013 1:23:46 AM
ASW :8/29/2013 1:23:46 AM P21 :8/29/2013 1:23:50 AM End :8/29/2013 1:23:50AM",
"ResponseCode":0,"ResponseText":"","HomeBannerURL":"http://example.com/example/",
"resAccount":[{"shopper_uid":1877,"customer_code":"10950",
"customer_name":"JASPER ACCOUNT",
"contact_id":6449,"first_name":"jasper","last_name":"manickaraj",
"email_address":"exam@example.com","password_hint":"name",
"default_shipping_method_uid":110,"password":"abc123",
"default_ship_to_address_id":"150"}],
"resCategories":
[{"item_category_uid":123,
"item_category_desc":"EFG",
"Total":0,"sub_category_image":"",
"sub_category_thumb":""},
{"item_category_uid":1,
"item_category_desc":"ABC",
"Total":0,"sub_category_image":"",
"sub_category_thumb":""},
{"item_category_uid":2,
"item_category_desc":"BCD",
"Total":0,"sub_category_image":"",
"sub_category_thumb":""},
{"item_category_uid":3,
"item_category_desc":"CDE",
"Total":0,"sub_category_image":"",
"sub_category_thumb":""}]}
<string>
现在我把上面的结果分配给var Jsonresult;现在我需要从Jsonresult中获取customer_name,first_name。。如何获得结果。。请帮我解决这个问题。。
使用JavaScriptSerializer来实现此功能。首先,您必须定义几个实体,例如。
public class RequestObj
{
public string Method { get; set; }
public string ResponseCode { get; set; }
public string HomeBannerURL { get; set; }
public IList<Account> ResAccount { get; set; }
}
public class Account
{
public string shopper_uid { get; set; }
public string customer_name { get; set; }
public string first_name { get; set; }
}
其次,您可以反序列化您的字符串。
var scriptSerializer = new JavaScriptSerializer();
var obj = scriptSerializer.Deserialize<RequestObj>(str);
好的,你必须在你的项目中添加json.net dll,你这样写代码:
var obj = JsonConvert.DeserializeObject<Dictionary<string, object>>(str.ToString());