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

C#使用Newtonsoft.Json Nuget解析Json响应获取CustomerList数据

C# 基于Newtonsoft.Json读取指定JSON节点并绑定GridView实现方案

前置准备

  • 右键项目依赖项,选择「管理NuGet程序包」,搜索并安装Newtonsoft.Json包,完成解析依赖引入。

第一步:定义JSON映射实体类

根据给出的固定JSON结构,定义对应层级的强类型实体,避免解析时出现字段匹配错误:

/// <summary>
/// 客户信息实体,对应CustomerList数组内的单条数据结构
/// </summary>
public class Customer
{
    public string EntityName { get; set; }
    public string EntityID { get; set; }
    public string ContactNum { get; set; }
}

/// <summary>
/// payload节点对应实体结构
/// </summary>
public class ResponsePayload
{
    public string SentItemCount { get; set; }
    public string MatchingItemCount { get; set; }
    public List<Customer> CustomerList { get; set; }
}

/// <summary>
/// JSON响应根节点实体结构
/// </summary>
public class ApiRootResponse
{
    public string Status { get; set; }
    public string StatusCode { get; set; }
    public ResponsePayload payload { get; set; }
}

第二步:解析JSON提取目标CustomerList数据

优先使用强类型反序列化方案,可维护性更高、出错率更低:

using Newtonsoft.Json;

// 此处替换为你实际拿到的JSON响应字符串
string rawJsonText = "接口返回的完整JSON内容";

// 反序列化为根实体对象
ApiRootResponse resp = JsonConvert.DeserializeObject<ApiRootResponse>(rawJsonText);
// 提取目标客户列表,增加空值判断避免空引用异常
List<Customer> customerDatas = resp?.payload?.CustomerList ?? new List<Customer>();

如果不想定义多层实体,也可以用JObject做轻量动态解析:

using Newtonsoft.Json.Linq;

JObject jsonObj = JObject.Parse(rawJsonText);
List<Customer> customerDatas = jsonObj["payload"]?["CustomerList"]?
    .ToObject<List<Customer>>() ?? new List<Customer>();

第三步:绑定数据到GridView控件

根据你使用的项目类型,选择对应的绑定写法即可:

  • WinForm项目下的DataGridView绑定:
// 清空历史绑定避免数据残留
dataGridView1.DataSource = null;
// 绑定解析完成的客户列表
dataGridView1.DataSource = customerDatas;
  • ASP.NET WebForm项目下的GridView绑定:
gridView1.DataSource = customerDatas;
gridView1.DataBind();

注意:如果后续JSON字段名和C#实体属性名存在命名、大小写不一致的情况,只需要在对应C#属性上添加[JsonProperty("JSON中实际的字段名")]特性做映射即可,当前示例的JSON字段和实体属性完全匹配,无需额外配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 07:57:27