在MVC中创建新路由

时间:2013-10-02 02:07:47

标签: asp.net-mvc asp.net-mvc-4

在MVC中,默认路由网址模式为 - url:“{controller} / {action} / {id}”

当我在默认路由之前添加如下所示的新路由时,默认路由的url显示为Home / Index?id = 5而不是Home / Index / 5。如何解决这个问题。

routes.MapRoute(
            name: "Name",
            url: "{controller}/{action}/{name}",
            defaults: new { controller = "Home", action = "Browse", name = UrlParameter.Optional }
        );  

2 个答案:

答案 0 :(得分:0)

从路由角度来看,永远不会触发默认路由,因为您添加的路由完全相同。所以你的路线会捕捉到默认路线所捕获的所有东西,如果它是唯一的路线,或放在你的路线之前。两者都将匹配一个,两个和三个段的URL。

答案 1 :(得分:0)

这条路线是不必要的,几乎没用。 就像@asymptoticFault所说的那样,它的作用与默认目的相同。