在我的asp.net mvc项目中,所有链接都显示了索引操作 例如:
localhost:1559 / Home / Index
localhost:1559 / about-us / Index
localhost:1559 / contact-us / Index
localhost:1559 / portfolio / Index
为什么它不会隐藏索引操作?
我想这样表现出来:
localhost:1559 / Home
localhost:1559 / about-us
localhost:1559 / contact-us
localhost:1559 /组合
这是我的全球文件代码:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.Add(
new Route("{controller}/{action}/{Q1}/{Q2}",
new RouteValueDictionary(
new { controller = "Home", action = "Index", Q1 = UrlParameter.Optional, Q2 = UrlParameter.Optional }),
new HyphenatedRouteHandler())
);
routes.Add(
new Route("{controller}/{action}/{Q1}",
new RouteValueDictionary(
new { controller = "Home", action = "Index", Q1 = UrlParameter.Optional }),
new HyphenatedRouteHandler())
);
routes.Add(
new Route("{controller}/{action}",
new RouteValueDictionary(
new { controller = "Home", action = "Index"}),
new HyphenatedRouteHandler())
);
}
谁能帮助我?
答案 0 :(得分:0)
而不是
new Route("{controller}/{action}/{Q1}",
使用
new Route("{controller}/{Q1}",
每个(你必须调整以适应参数)。
发生这种情况的原因是因为您的操作被称为“索引”。因此,您的路径将使用“index”操作的名称填充占位符{action}。