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

在C#中如何将二维数组响应反序列化为List<Model>?

问题原因与解决方案

你的接口返回的JSON是双层嵌套数组(外层数组包裹着内层数组),但你尝试直接反序列化为单层的List<Model>,类型不匹配导致反序列化失败。

解决方法

方法1:先反序列化为双层列表,再提取内层数据

// 先反序列化为List<List<Model>>
var nestedList = JsonConvert.DeserializeObject<List<List<Model>>>(Response);
// 提取内层列表,若外层为空则返回空列表
List<Model> Res = nestedList.FirstOrDefault() ?? new List<Model>();

方法2:使用JArray解析后提取内层数组

using Newtonsoft.Json.Linq;

// 解析为JArray
var outerArray = JArray.Parse(Response);
// 取外层数组的第一个元素(内层数组),再反序列化为List<Model>
List<Model> Res = outerArray.First().ToObject<List<Model>>();

额外检查

确保你的Model类定义与JSON字段匹配:

public class Model
{
    public int BillRateCardId { get; set; }
    public string ExternalRateCardId { get; set; }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 20:51:20