我在我的ASP.NET MVC + WebAPI应用程序中苦于布线问题。我觉得我在这里有一个移动的目标,因为当我添加或更改一条路线时,我打破了另一条路线。这是我的具体例子。无法直接在我的脑海中获得ASP.NET MVC和Web API路由 - 获得404s豪华版
首先,我的控制器,所以你可以看到的名字:
接下来,我的MVC的路由配置(据我所知,我的配置是可能重复,但是那是因为我想的东西) :
而且我的Web API路由配置(据我所知,我的配置是可能很重复,但是那是因为我想的东西):
作为路由问题例如,这里的PodcastFeeds API控制器:
所以我张贴到创建操作方法......
而且正如你所看到的我得到的错误:404 not found - "No HTTP resource was found that matches the request URI
。
我喜欢这里的一些方向......
你可以分享你的Global.asax内容我需要看到Application_Start方法 –
这里你去:'AreaRegistration.RegisterAllAreas();,; FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters),WebApiConfig.Register(GlobalConfiguration.Configuration); ,RouteConfig.RegisterRoutes(RouteTable.Routes);'请注意,我在WebApiConfig.cs的'Register(...)'方法中放置了一个断点,并且确实被击中。 – Howiecamp
我很困惑如何MVC路由和Web API路由交互,因此我不清楚在哪里做出更改。我应该在routeconfig还是在webapi路由配置中进行默认路由更改?关于你的评论重新:我的一些路线没有指定控制器,我已经编辑该映射为:'Routes.MapHttpRoute(name:“PodcastFeedsAPI”,routeTemplate:“api/PodcastFeeds/{action}”,默认值:new { ApiController =“PodcastFeeds”,action =“Create”});'但我得到同样的错误。 (请注意,url并不适用于我,我必须做routeTemplate。也许是因为我是Web API 2?) – Howiecamp