【发布时间】:2012-07-04 17:47:55
【问题描述】:
在我的 ASP.NET MVC 4 应用程序的 RouteConfig 文件中,我注册了以下默认路由:
routes.MapRoute("Default", "{controller}/{action}/{id}",
new { controller = "home", action = "index", id = UrlParameter.Optional });
现在,在我的 Razor 视图中,我想像这样生成一个指向我的应用程序根目录的 URL:
<a href="@Url.Action("index", "home")">Home</a>
生成的 URL 包含尾部斜杠;因此,单击该链接会打开页面 localhost/IISApplicationName/。但是,我希望 URL 不包含尾部斜杠,以便 URL 为 localhost/IISApplicationName。为其他操作生成路由,例如 /Account/Login,不会创建带有斜杠的 URL——它只是关于链接到我的应用程序根目录的路由。
有什么方法可以防止 ASP.NET MVC 路由在上述路由中附加斜杠吗?
(我知道我可以从包含斜杠的 URL 重定向到没有斜杠的 URL,但我宁愿让路由首先生成正确的路由 URL。)
【问题讨论】:
-
我无法复制您的问题,我使用
Default route,它会转到没有/的网址 -
仅供参考,斜杠有什么问题?
-
@alexanderb 1) 尽管 URL 略有不同,但两个链接最终都显示相同的页面。不好...... 2)它很丑;-)。
-
我认为这可能有用:net.tutsplus.com/tutorials/…
标签: asp.net asp.net-mvc routing asp.net-mvc-routing