Asp.net core 将整数数组传递给ASP.NET核心中的ApiController
我在ASP.NET Core 2.1中有一个简单的api控制器,如下所示:Asp.net core 将整数数组传递给ASP.NET核心中的ApiController,asp.net-core,Asp.net Core,我在ASP.NET Core 2.1中有一个简单的api控制器,如下所示: [Route("api/[controller]")] [ApiController] public class SumController : ControllerBase { [HttpGet("CalculateSum")] public int CalculateSum(int a, int b) { return a + b; } [HttpGet("C
[Route("api/[controller]")]
[ApiController]
public class SumController : ControllerBase
{
[HttpGet("CalculateSum")]
public int CalculateSum(int a, int b)
{
return a + b;
}
[HttpGet("CalculateSumOfArray")]
public int CalculateSumOfArray(int[] values)
{
return values.Sum();
}
}
https://localhost:44346/api/Sum/CalculateSum?a=1&b=2
[HttpGet("CalculateSumOfArray")]
public int CalculateSumOfArray([FromQuery(Name = "values")] int[] values)
{
return values.Sum();
}
第一个方法处理如下调用:
[Route("api/[controller]")]
[ApiController]
public class SumController : ControllerBase
{
[HttpGet("CalculateSum")]
public int CalculateSum(int a, int b)
{
return a + b;
}
[HttpGet("CalculateSumOfArray")]
public int CalculateSumOfArray(int[] values)
{
return values.Sum();
}
}
https://localhost:44346/api/Sum/CalculateSum?a=1&b=2
[HttpGet("CalculateSumOfArray")]
public int CalculateSumOfArray([FromQuery(Name = "values")] int[] values)
{
return values.Sum();
}
但第二点:
https://localhost:44346/api/Sum/CalculateSumOfArray?values=1&values=2&values=3
只需回答:
{"":["The input was not valid."]}.
我是否需要执行一些特殊操作,以便能够将数组发送到ApiController?添加FromQuery属性,如下所示:
[Route("api/[controller]")]
[ApiController]
public class SumController : ControllerBase
{
[HttpGet("CalculateSum")]
public int CalculateSum(int a, int b)
{
return a + b;
}
[HttpGet("CalculateSumOfArray")]
public int CalculateSumOfArray(int[] values)
{
return values.Sum();
}
}
https://localhost:44346/api/Sum/CalculateSum?a=1&b=2
[HttpGet("CalculateSumOfArray")]
public int CalculateSumOfArray([FromQuery(Name = "values")] int[] values)
{
return values.Sum();
}