C# 具有多个参数的点网核心中的路由

C# 具有多个参数的点网核心中的路由,c#,.net-core,asp.net-core-routing,C#,.net Core,Asp.net Core Routing,请让我知道确保在URL中发送正确参数的确切方法,以便在dot net core中正确导航 [HttpGet("{id},{id2}",Name ="Edit")] [AllowAnonymous] public ActionResult Edit(int id, int id2) { return Ok(3); } [HttpGet("{id}")] public string Get(int id) {

请让我知道确保在URL中发送正确参数的确切方法,以便在dot net core中正确导航

    [HttpGet("{id},{id2}",Name ="Edit")]
    [AllowAnonymous]
    public ActionResult Edit(int id, int id2)
    {
        return Ok(3);
    }

    [HttpGet("{id}")]
    public string Get(int id)
    {
        return "value";
    }
当我尝试导航到以下url时:

/api/test/Edit?id=1&id2=4
它被导航到另一个方法
Get
,并以字符串形式返回值

Startup.cs文件包含以下内容

app.UseMvcWithDefaultRoute();

确保将正确的路由模板应用于操作

[Route("api/[controller]")]
public class TestController: Controller {

    //GET api/test/edit?id=1&id2=4
    [HttpGet("Edit")]
    [AllowAnonymous]
    public ActionResult Edit(int id, int id2) {
        //...

        return Ok(3);
    }

    //GET api/test/5
    [HttpGet("{id}")]
    public string Get(int id) {
        return "value";
    }
}
参考.Net Core 3.1.3

在Startup.Configure方法中:

app.UseEndpoints(endpoints =>
     {
          endpoints.MapControllers();
     });
控制器注释:
[Route(“[Controller]/[action]”)

操作方法注释:
[HttpGet(“{param1:int}/{param2:int}”)]

邮递员:
https://localhost:5001/controller/action/param1/param2

希望这有帮助