我有一个名为BeconsController
的控制器,它有一个简单的get Action。使用路线:
app.UseMvc(routes =>
{
routes.MapRoute(
name: "Default",
template: "{controller}/{action}/{id?}");
});
路由很好,http://locahost/beacons/5
(其中5是id)解析为正确的操作。但是,我希望这会成为'api'的道路。我原以为这可以写成:
app.UseMvc(routes =>
{
routes.MapRoute(
name: "Default",
template: "api/{controller}/{action}/{id?}");
});
但是当我将浏览器指向http://locahost/api/beacons/5
时,我收到了404。事实上,旧路径仍然有效:http://locahost/beacons/5
带我到页面!
这应该很简单。我做错了什么?
答案 0 :(得分:0)
您是仅使用此路线还是路线对象中有多条路线?如果你有几个,它将采取与之匹配的第一条路线。
也许以下链接可以帮助您: http://aspnetmvc.readthedocs.org/projects/mvc/en/latest/migration/migratingfromwebapi2.html http://docs.asp.net/en/latest/fundamentals/routing.html?highlight=routes