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

如何反序列化包含Item1、Item2字段的JObject对象?

问题原因

你原有代码的错误点在于没有定位到正确的JToken层级:

  • 根节点jObject下只有Item1、Item2两个属性,你直接取jObject["id"]根本找不到对应值
  • AssocEmployee是Item1的子属性,你直接用根节点转Employee类型肯定转换失败
正确实现代码

两种方式选一种即可:

// 方式1:直接转换(推荐,字段多的时候更省代码,不易出错)
EmployeeAssignment empAssignment = jObject["Item1"].ToObject<EmployeeAssignment>();

// 方式2:手动逐个字段赋值
var empAssignment = new EmployeeAssignment();
empAssignment.ID = jObject["Item1"]["ID"].Value<int>();
empAssignment.AssocEmployee = jObject["Item1"]["AssocEmployee"].ToObject<Employee>();

补充说明:如果你后续需要处理Item2,先判断jObject["Item2"]不为null之后,调用ToObject<Position>()就能拿到对应实例,现在为null的场景直接忽略即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 18:45:08