swagger -不支持异常:动作的HTTP方法不明确

6yjfywim  于 2022-11-06  发布在  其他
关注(0)|答案(2)|浏览(161)

不支持异常:动作的HTTP方法不明确- AAON.Insiite.Api.Controllers.TokenController.Get(AAON.Insiite.Api)。动作需要Swagger 2.0的明确HttpMethod系结

我已经阅读了关于这个问题的几个问题,但没有一个解决方案工作。
我试过了:

  • 将[HttpGet]添加到相关方法中。
  • 将[NonAction]添加到所讨论的方法中。
  • 正在将方法的存取修饰词变更为Protected。
  • 删除方法仍会针对现在已删除的方法掷回例外状况。
  • 已清除Visual Studio缓存

我已经尝试清除我的Visual Studio缓存,但没有效果。

[HttpGet]
    public IActionResult Get()
    {
        return Ok("Running");
    }
vohkndzv

vohkndzv1#

根据@Crumblenautjs的回答,我在自定义路由约定上也遇到了类似的问题。调试了一段时间后,我发现RouteAnalyzer_Main(swagger用来定义路由)路由也被“我的”控制器替换了。
我的解决方案是在RouteAnalyzer发生时跳过Apply,至少对我的解决方案有效。

public void Apply(ControllerModel controller)
{
    if (controller.ControllerName == "RouteAnalyzer_Main")
    {
        return;
    }
}
mnemlml8

mnemlml82#

问题是控制器命名约定。已解决。

相关问题