WebApi2属性路由404

Jam*_*xon 9 asp.net-web-api routeattribute

描述我在Visual Studio 2012升级的现有MVC4/WebAPI1项目MVC5/WebAPI2 这里.该网站按预期工作.然后我按照这里找到的基于属性的路由的指示- 除了我不断获得控制器的404.我的步骤是:

  • 添加config.MapHttpAttributeRoutes(); 在WebApiConfig.Register中
  • 添加config.EnsureInitialized(); 在WebApiConfig.Register中
  • 从NuGet添加AttributeRouting(ASP.NET WebAPI)
  • 在我的测试控制器上添加Route属性

我看到在config.EnsureInitialized()之后我暂停了测试路由.然而,尝试击中那条路线给了我一个404.

如果有任何方法可以检查请求并查看路由表是如何匹配的?

Lok*_*oki 13

我有几乎相同的问题.并找不到任何有效的解决方案.Route调试器实际上不适用于Web API 2.最后,我找到了一种调试Web API 2的工作方式,包括路由属性.

Microsoft.AspNet.WebApi.HelpPage

Нope这有助于有人节省几个小时的debuging.

  • 我认为他的意思是通过安装HelpPage包,您可以导航到/帮助并查看所有WebApi路由,URL参数和/或身体参数,从中可以找出问题所在 (4认同)

Fal*_*als 0

您可以用来Route Debugger检查所有路线。MSDN 的官方帖子对此进行了介绍: