C# 如何在ASP.NET核心Web API中传递int数组
我有以下Web API方法:C# 如何在ASP.NET核心Web API中传递int数组,c#,asp.net-core,asp.net-core-webapi,C#,Asp.net Core,Asp.net Core Webapi,我有以下Web API方法: [Route("api/[controller]")] [ApiController] public class SubjectsController : ControllerBase { [HttpGet("children")] public IActionResult GetAllFromChildren([FromQuery]int[] childrenIds) { // omitted for brevity
[Route("api/[controller]")]
[ApiController]
public class SubjectsController : ControllerBase
{
[HttpGet("children")]
public IActionResult GetAllFromChildren([FromQuery]int[] childrenIds)
{
// omitted for brevity
}
}
我试图通过Ajax传递查询字符串来调用它,但我似乎无法让它工作。我的Ajax调用如下所示:
$.ajax({
url: "/api/subjects/children?childrenIds=1&childrenIds=2&childrenIds=3",
method: "GET",
contentType: "application/json; charset=utf-8"
})
[Route("api/[controller]")]
[ApiController]
public class SubjectsController : ControllerBase
{
[HttpGet("children")]
public IActionResult GetAllFromChildren([FromQuery(Name="childrenIds")]int[] childrenIds)
{
// omitted for brevity
}
}
$.ajax({
url: "/api/subjects/children?childrenIds=1&childrenIds=2&childrenIds=3",
method: "GET",
contentType: "application/json; charset=utf-8"
})
调用了该方法,但未填充int数组。我做错了什么?尝试将
Name
添加到[FromQuery]
,因此代码应该如下所示:
$.ajax({
url: "/api/subjects/children?childrenIds=1&childrenIds=2&childrenIds=3",
method: "GET",
contentType: "application/json; charset=utf-8"
})
[Route("api/[controller]")]
[ApiController]
public class SubjectsController : ControllerBase
{
[HttpGet("children")]
public IActionResult GetAllFromChildren([FromQuery(Name="childrenIds")]int[] childrenIds)
{
// omitted for brevity
}
}
$.ajax({
url: "/api/subjects/children?childrenIds=1&childrenIds=2&childrenIds=3",
method: "GET",
contentType: "application/json; charset=utf-8"
})
ajax url如下所示:
$.ajax({
url: "/api/subjects/children?childrenIds=1&childrenIds=2&childrenIds=3",
method: "GET",
contentType: "application/json; charset=utf-8"
})
[Route("api/[controller]")]
[ApiController]
public class SubjectsController : ControllerBase
{
[HttpGet("children")]
public IActionResult GetAllFromChildren([FromQuery(Name="childrenIds")]int[] childrenIds)
{
// omitted for brevity
}
}
$.ajax({
url: "/api/subjects/children?childrenIds=1&childrenIds=2&childrenIds=3",
method: "GET",
contentType: "application/json; charset=utf-8"
})
这是我的错别字,我会在问题中编辑,我检查了代码,有一个&。这回答了你的问题吗?