繁体   English   中英

如何运行 ASP.NET MVC Web API Z594C103F2C6E04C3D18AB059F031E0 方法查询参数值?

[英]How to run ASP.NET MVC Web API controller method by query parameter value?

我试图运行基于查询参数而不是正常路由的 controller 方法(例如“:MyController\DoSomething)但出现错误。如何解决这个问题?

[Route("MyController?Command=DoTask1")]
public IHttpActionResult Task1()
{ 
    return Ok();
}

[Route("MyController?Command=DoTask2")]
public IHttpActionResult Task2()
{ 
    return Ok();
}
....
[Route("[controller]")]
    public class MyController : Controller
    {
        [HttpGet("")]
        public IActionResult Hello(string command)
        {
            switch (command.ToLowerInvariant())
            {
                case "dotask1":
                    Task1();break;
                case "dotask2":
                    Task2(); break;
            }
            return Ok();
        }

        private void Task1()
        {

        }
        private void Task2()
        {

        }
    }

这样,您将只有一个端点,并且这些路由将是有效的:

/my?command=DoTask1

/my?command=DoTask2

ETC

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM