在我的家庭控制器中,我有两个视图,Index
和About
。
我正在尝试将请求配置为example.com/about
以点击About
页面。
在我的Startup.cs文件中,我有以下MapRoute的
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
routes.MapRoute(
"Id",
"{id}",
new { controller = "Home", action = "About" });
});
这允许将example.com/about
的请求传递到About
操作。我的问题是它还会在转发之后捕获所有其他请求。例如,对example.com/foobarr
的请求也会触及About
操作。
如何更改MapRoute以使example.com/about
的请求到达About
操作,但忽略其他任何操作。
答案 0 :(得分:1)
最好配置控制器内的路由,指定方法以上的属性,例如:
[HttpGet("Home/About")]
自定义属性用于about route的操作方法。在这种情况下,处理特定路线更容易。