gpt4 book ai didi

c# - 如何在 Asp.net Web Api 的 url 参数中发送 Controller 操作?

转载 作者:行者123 更新时间:2023-11-30 22:59:33 25 4
gpt4 key购买 nike

通常你会像这样调用 Controller 的 Action http://hostname/MyController/MyAction我要求我的 Web Api 具有这样的路由:http://hostname/MyController?action=MyAction,即在url参数中传递action。

我的 Controller :

public class MyController : ApiController
{
[HttpGet]
[Route("WHAT SHOULD BE HERE??")]
public IHttpActionResult MyAction()
{
// some code
}
}

有什么想法可以编写这样的路由吗?

最佳答案

您可以尝试以下方法:

public class MyController : ApiController
{
[HttpGet]
[Route("MyController")]
public IHttpActionResult MyInnerController(String action)
{
switch(action)
{
case "MyAction":
return MyAction();
}

return BadRequest("Invalid action: " + action);
}

public IHttpActionResult MyAction()
{
return Ok();
}
}

如果你需要额外的参数,事情会变得更复杂。

关于c# - 如何在 Asp.net Web Api 的 url 参数中发送 Controller 操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52120215/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com