【问题标题】:How to access the values from a JArray?如何访问 JArray 中的值?
【发布时间】:2020-11-12 12:45:10
【问题描述】:

我的JArray 格式如下:

jArray = {"data": [
  {
    "Id": 29288,
    "SourceURL": "hhfythhs\\fg\d$",
    "TargetURL": "testURL@xyz.com",
    "Site_Owner_Email_IDs": "emu@xyz.com",
    "siteId": null
  },
  {
    "Id": 30724,
    "SourceURL": "\\\\jnjphmafps1\\home$\\nriver46",
    "TargetURL": "testURL@xyz.com",
    "Site_Owner_Email_IDs": "emu@xyz.com, kite@xyz.com",
    "siteId": null
  }
]}

我正在尝试使用以下代码访问 Site_Owner_Email_IDs 值:

foreach (var item in jArray)
{
    emailIDsoe = (string)item.Value["data"][0]["Site_Owner_Email_IDs"];
}

这给了我一个错误:

使用无效键值访问的 JArray 值:“数据”。需要 Int32 数组索引。

我如何访问密钥 Site_Owner_Email_IDs 及其在 jArray 中每个项目的值?

【问题讨论】:

    标签: c# json.net


    【解决方案1】:

    您的jArray 实际上是一个JObject,其中包含一个JArray(在data 属性中)。

    试试这样:

    foreach (var item in jArray["data"])
    {
        emailIDsoe = (string)item["Site_Owner_Email_IDs"];
    }
    

    小提琴:https://dotnetfiddle.net/tzcXql

    【讨论】:

      猜你喜欢
      • 2017-11-23
      • 2013-04-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多