如何解决如何在C#.NET Web API中接收和拆分对象数组
我在前端有一个导入的excel文件,保存时,它通过.NET Web API
将excel数据作为对象数组发送到我们的[FromBody]
控制器,该控制器依次发送该数据通过stored procedure
到SQL DataTable
。数组中的每个对象都是Excel文件中的一行。
编辑我的数据是通过POST
与httpOptions
body:
从前端发送的。发送到控制器的数据如下:
[
{name: "Bob",position: "Software Developer",sales: 100000}
{name: "Ted",sales: 100568}
{name: "George",sales: 40000}
]
在C#
控制器中,如何接收带有未知数量对象的数组并使用它?目前,我正在使用一个示例forEach
块,该块最初仅接受ID数组,但这不起作用,因为现在我正尝试发送对象数组,因此无法使用{{1} }:
.split
在带有代码注释的两个部分中我应该更改什么?
解决方法
您没有排列的数据类型,因此现在发送回的数组无法绑定到字符串,因此excelRows
为空。因此,当您尝试拆分excelRows
时,它会在您的脸上炸毁。
让您的控制器接受您发送的数据...
假设您正在发回Employee[]
。
public class Employee
{
public string Name { get; set; }
public string Position { get; set; }
public int Sales { get; set; }
}
现在,显然您无法在string.Split
上致电Employee[]
。但是您可以做[]
可用的任何事情,例如for
,foreach
,Select
等。
foreach(var employee in employees)
{
// do stuff...
}
,
我最近在相同的场景中工作,需要获取对象列表。
public class Employee
{
public string Name { get; set; }
public string Position { get; set; }
public int Sales { get; set; }
}
对于控制器
[Route("api/myRoute")]
[HttpPost]
public async Task<IHttpActionResult> uploadExcelData([FromBody] List<Employee> EmpList){
EmpList.ForEach(Emp=> {
...............Write your Code
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。