C#MVC HttpGet向路由添加参数
在我的控制器中,我有如下操作:C#MVC HttpGet向路由添加参数,c#,asp.net-mvc,asp.net-web-api,C#,Asp.net Mvc,Asp.net Web Api,在我的控制器中,我有如下操作: [Route("api/[controller]")] [ApiController] public class ManageOPIdentifierController : ControllerBase { [HttpGet("[action]")] public OPIdentifiersVM Get(int pageSize, int pageNumber) { 如何将参数pa
[Route("api/[controller]")]
[ApiController]
public class ManageOPIdentifierController : ControllerBase
{
[HttpGet("[action]")]
public OPIdentifiersVM Get(int pageSize, int pageNumber)
{
如何将参数pageSize和pageNumber添加到HttpGet?因为现在当我有第二个没有参数的Get方法时,我得到了错误,因为有两个路由具有相同的定义。
第一条HttpGet路线应该是什么样子
[HttpGet("[action]/{pageSize}&{pageNumber}")]
上面的代码不起作用
编辑:
我的问题被误解了。
我有两种方法:
[HttpGet("[action]")]
public OPIdentifiersVM Get(int pageSize, int pageNumber)
及
如果我很好地理解了注释,我必须更改其中一个方法的名称。但我想知道是否有可能有两个同名但参数不同的方法
[HttpGet("[action]")]
public OPIdentifiersVM Get([FromUri] int pageSize, [FromUri] int pageNumber)
(或[FromRoute]
如果您使用的是asp.net core),则可以通过
http://localhost/api/ManageOPIdentifier/Get/10/1
或者为此使用查询参数(这将是更好的解决方案)
然后
当您的操作名等于http谓词方法名时,您还可以使用simple[HttpGet]
,请检查此项。您还应更改并删除管线中的&with/in
[HttpGet("[action]")]
public OPIdentifiersVM Get([FromUri] int pageSize, [FromUri] int pageNumber)
http://localhost/api/ManageOPIdentifier/Get/10/1
[HttpGet("[action]")]
public OPIdentifiersVM Get([FromQuery] int pageSize, [FromQuery] int pageNumber)
http://localhost/api/ManageOPIdentifier/Get?pageSize=10&pageNumber=1