Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# json反序列化和字段提取?_C#_Asp.net_Json_Deserialization - Fatal编程技术网

C# json反序列化和字段提取?

C# json反序列化和字段提取?,c#,asp.net,json,deserialization,C#,Asp.net,Json,Deserialization,下面是我从REST得到的回应 { "category_id": 1314, "display_category_name": "", "english_category_name": "Sports", "url_category_name": "" }, { "category_id": 13, "display_category_name": "Art", "english_category_name": "Art", "url

下面是我从REST得到的回应

{
    "category_id": 1314,
    "display_category_name": "",
    "english_category_name": "Sports",
    "url_category_name": ""
},
{
    "category_id": 13,
    "display_category_name": "Art",
    "english_category_name": "Art",
    "url_category_name": "art"
},
{
    "category_id": 21,
    "display_category_name": "Blogs",
    "english_category_name": "Blogs",
    "url_category_name": "blogs"
}
但是我只需要显示“category_id”和
english_category_name
,那么如何在c#中单独提取这两个字段呢


提前感谢。

您可以使用
System.Web.Script.Serialization.JavaScriptSerializer
或创建以下类:

public class Category
{
    public int category_id { get; set; }
    public string english_category_name { get; set; }
}
使用以下库
Newtonsoft.Json

按如下方式反序列化jsonstring:

var categories = JsonConvert.DeserializeObject<List<Category>>(json);
请注意,您也可以从json类型中重命名C#中的字段,如下所示:

[JsonProperty("english_category_name")]
public string EnglishCategoryName { get; set; }

,C#中的实体应仅包含这两个属性。@user2037787您想在C#或jquery中使用这些属性吗?@ChiragVidani我随时可以使用任何东西。。Jquery对我来说也很好。你能再简要说明一下你的问题吗?我认为第二条注释包含answer.var category=categories.FirstOrDefault();string categoryDisplayName=category.display\u category\u name;不起作用吗??任何其他方法对不起,它应该是string categoryDisplayName=category.english\u category\u name;我已经更新了答案。var category=categories.FirstOrDefault()显示错误。。必须包含任何dll
[JsonProperty("english_category_name")]
public string EnglishCategoryName { get; set; }