gpt4 book ai didi

json - 将 JSON 发布数据转换为对象数组

转载 作者:行者123 更新时间:2023-12-04 22:55:42 27 4
gpt4 key购买 nike

服务器端:ASP.NET WEB-API 2.0

我正在将一堆名称值对作为 JSON 从客户端发送到服务器端。在服务器端(WEB API Controller ),我想将它们转换为包含名称和值的对象数组/列表。

JSON 发布数据:

[{"name":"sEcho","value":9},
{"name":"iColumns","value":6},
{"name":"sColumns","value":"Name1,Name2,Name3,Name4,Name5,Name6"},
{"name":"iDisplayStart","value":0},
{"name":"iDisplayLength","value":10},
{"name":"mDataProp_0","value":0},
{"name":"mDataProp_1","value":1},
{"name":"mDataProp_2","value":2},
{"name":"mDataProp_3","value":3}]

我尝试使用以下模式将其映射到服务器端,但没有成功

public IHttpActionResult Post([FromBody]GridDataModel gridData)

模型

public class GridDataModel
{
public GridData[] GridData { get; set; }
}

public class GridData
{
public string Name { get; set; }
public string Value { get; set; }
}

我习惯于将这样的 JSOn 结构映射为单个对象,每个名称值都映射到一个对象属性。不确定如何将其转换为对象数组。我需要它是一个数组,因为名称值对的数量是动态的。

任何帮助将不胜感激!

提前致谢..

最佳答案

该方法需要一个实例而不是一个数组。我相信你可以做两件事

1) 更改方法签名

public IHttpActionResult Post([FromBody]IEnumerable<GridData> gridData)

2) 改变json对象

{"gridData": [{"name":"sEcho","value":9},
{"name":"iColumns","value":6},
{"name":"sColumns","value":"Name1,Name2,Name3,Name4,Name5,Name6"},
{"name":"iDisplayStart","value":0},
{"name":"iDisplayLength","value":10},
{"name":"mDataProp_0","value":0},
{"name":"mDataProp_1","value":1},
{"name":"mDataProp_2","value":2},
{"name":"mDataProp_3","value":3}]}

关于json - 将 JSON 发布数据转换为对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21332855/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com