我们知道route在route.config文件中注册,如下所示
routes.MapRoute(
name: "ProductPage",
url: "{productId}/{productTitle}",
defaults: new { controller = "Products", action = "Show" },
constraints: new { productId = "\\d+" }
);
我们可以从路由配置文件中删除路由相关代码并实现属性路由吗?
见这个
[Route("{productId:int}/{productTitle}")]
public ActionResult Show(int productId) { ... }
我们可以使用上面的属性路由吗? 我们可以从路由配置文件中删除所有与路由相关的代码,所以我的路由配置看起来像?
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapMvcAttributeRoutes();
}
}
请帮助我控制此路由问题。感谢
答案 0 :(得分:0)
你当然可以,但最好在RouteConfig
中保留一条默认路线,并用路线属性添加装饰其他动作方法。