我正在尝试从HttpPost请求创建IEnumerable。
正文中的JSON内容如下:
[{"id":15496,"order":0},{"id":15500,"order":1},{"id":15503,"order":2}]
发布请求如下:
[HttpPost("[action]")]
public IActionResult SendReorderRows([FromBody] IEnumerable<ReorderRow> rows){
foreach(var row in rows){
Debug.WriteLine(row.id);
}
}
所引用的类在这里:
public class ReorderRow
{
public int id;
public int order;
}
但是,当我运行此示例时,它为我提供了
对象引用未设置为对象的实例
“行”错误。
我很难找到解析JSON并将其转换为IEnumerable以便在API中使用的基本方法。我想念一些简单的东西吗?
答案 0 :(得分:4)
改为使用数组。
[HttpPost("[action]")]
public IActionResult SendReorderRows([FromBody] ReorderRow[] rows) {
foreach(var row in rows){
Debug.WriteLine(row.id);
}
}
它将绑定到JSON数组。
您还需要对象模型中的公共属性,以便在绑定对象时正确填充它们。
public class ReorderRow {
public int id { get; set; }
public int order { get; set; }
}