相关文章推荐
多情的葡萄酒  ·  关于做好2025年高校教师资格认定(面试)工 ...·  1 周前    · 
从容的鼠标  ·  使用SteamVR 收藏庫部署SteamVR 軟體·  2 周前    · 
爱跑步的感冒药  ·  汉献帝刘协·  1 月前    · 
痛苦的苹果  ·  汪曾祺的7句经典语录,读懂了就活得不累了,尤 ...·  1 年前    · 
成熟的烤地瓜  ·  江苏省人力资源和社会保障厅事业南京农业大学2 ...·  1 年前    · 
小百科  ›  将Newtonsoft.Json.Linq.JArray转换为特定对象类型的列表-腾讯云开发者社区-腾讯云
慷慨大方的吐司
1 年前
首页
学习
活动
专区
工具
TVP
返回腾讯云官网
提问
问 将Newtonsoft.Json.Linq.JArray转换为特定对象类型的列表
Stack Overflow用户
提问于 2012-11-26 20:52:20
EN

我有以下类型为 {Newtonsoft.Json.Linq.JArray} 的变量。

properties["Value"] {[
    "Name": "Username",
    "Selected": true
    "Name": "Password",
    "Selected": true
]}

我想要完成的是将其转换为 List<SelectableEnumItem> ,其中 SelectableEnumItem 是以下类型:

public class SelectableEnumItem
        public string Name { get; set; }
        public bool Selected { get; set; }
    }

我对编程比较陌生,我不确定这是否可能。任何对工作示例的帮助都将非常感谢。

5 288.1K 0 票数 281
EN
c#
json.net

回答 5

Stack Overflow用户

发布于 2015-03-23 20:40:55

问题中的示例是一个更简单的情况,其中属性名称在json和代码中完全匹配。如果属性名称不完全匹配,例如json中的属性为 "first_name": "Mark" ,而代码中的属性为 FirstName ,则使用 Select method ,如下所示

List<SelectableEnumItem> items = ((JArray)array).Select(x => new SelectableEnumItem
    FirstName = (string)x["first_name"],
    Selected = (bool)x["selected"]
}).ToList();
票数 45
EN

Stack Overflow用户

发布于 2018-02-05 00:07:22

在我的例子中,API返回值如下:

{
  "pageIndex": 1,
  "pageSize": 10,
  "totalCount": 1,
  "totalPageCount": 1,
  "items": [
      "firstName": "Stephen",
      "otherNames": "Ebichondo",
      "phoneNumber": "+254721250736",
      "gender": 0,
      "clientStatus": 0,
      "dateOfBirth": "1979-08-16T00:00:00",
      "nationalID": "21734397",
      "emailAddress": "sebichondo@gmail.com",
      "id": 1,
      "addedDate": "2018-02-02T00:00:00",
      "modifiedDate": "2018-02-02T00:00:00"
  "hasPreviousPage": false,
  "hasNextPage": false
}

将items数组转换为客户端列表的过程如下所示:

 if (responseMessage.IsSuccessStatusCode)
            var responseData = responseMessage.Content.ReadAsStringAsync().Result;
 
推荐文章
多情的葡萄酒  ·  关于做好2025年高校教师资格认定(面试)工作的通知
1 周前
从容的鼠标  ·  使用SteamVR 收藏庫部署SteamVR 軟體
2 周前
爱跑步的感冒药  ·  汉献帝刘协
1 月前
痛苦的苹果  ·  汪曾祺的7句经典语录,读懂了就活得不累了,尤其是第四句_手机 ...
1 年前
成熟的烤地瓜  ·  江苏省人力资源和社会保障厅事业南京农业大学2018年拟聘非教学 ...
1 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
小百科 - 百科知识指南
© 2024 ~ 沪ICP备11025650号