You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#用Newtonsoft.Json提取JSON数据报JProperty访问错误如何解决?

错误原因
  • 代码中obj["return"]拿到的JToken实际类型为JObject,对应JSON里的对象结构,并非可遍历的数组结构
  • 直接对JObject执行foreach遍历,得到的每个item是JProperty类型(即JSON对象的键值对单元),该类型不支持通过["key"]的方式访问下级节点,因此触发System.InvalidOperationException报错。
修复方案

根据业务场景可选择以下两种方案:

方案1:return下为固定字段,无需遍历

直接通过JObject索引器取值即可,无需循环,示例代码:

JObject obj = JObject.Parse(jsonString);
JObject returnObj = obj["return"] as JObject;
string output1_param = returnObj["output01"].ToString();
string output2_param = returnObj["output02"].ToString();

方案2:业务要求return为可遍历的对象集合

需调整JSON结构,将return对应内容改为数组格式,示例:

{
    "return": [
        {
            "output01": "Test request success!!",
            "output02": "test request"
        }
    ]
}

调整JSON结构后,原有遍历代码可正常运行。


内容的提问来源于stack exchange,提问作者singisu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 15:45:03