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

无法将Object类型转换为同属性自定义Info类的问题求助

解决方案

根据报错信息和调试观察,objectValue的实际类型是List<object>,而非你定义的Info类或List<Info>,所以直接强转会失败。你可以按以下步骤提取数据并转换为Info对象:

  1. 先将objectValue显式转换为List<object>
  2. 分别提取列表中的两个元素,转换为对应类型后赋值给Info实例

代码实现

// 先将objectValue转为List<object>
var objectList = objectValue as List<object>;
if (objectList != null && objectList.Count >= 2)
{
    // 提取第一个元素并转为string
    var valueStr = objectList[0] as string;
    // 提取第二个元素并转为List<long>
    var longList = objectList[1] as List<long>;
    
    // 实例化Info并赋值
    var info = new Info
    {
        Value = valueStr,
        List = longList
    };
}

补充说明

  • 之前强转Info或List<Info>失败的核心原因:ExpandoObject中对应键的值本质是一个包含两个不同类型元素的object列表,和你定义的Info类没有继承或兼容关系,无法直接强制转换。
  • 使用as转换可以避免类型不匹配时抛出异常,增加空值和元素数量判断能提升代码健壮性。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 01:15:31