使用Routing,ASP.NET MVC更改URL

时间:2010-06-14 15:15:40

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

我对使用asp.net mvc进行路由仍然很新,所以也许这很明显,我只是错过了答案......

我有一个名为'pages'的控制器,它有几个动作结果,'信息','历史'等。每个动作结果都有一个字符串,从那里,它返回一个基于字符串名称的视图。所以...

页/信息/关于 页/信息/产品 页/历史/雇员

等。当然,控制器名为“页面”。我想知道我是否可以使用路由来删除用户端URL的“页面”部分,只是为了更加用户友好的方法?

1 个答案:

答案 0 :(得分:3)

是的,你可以这样做:

context.MapRoute(
            "Pages_History_Employees",
            "History/Employees", // URL with parameters
            new { controller = "Pages", action = "History" }
        );

只需将控制器指定为Pages,并指定您想要的任何url作为第二个参数。这是说我想将History / Employees URI路由到Pages控制器并使用History操作来处理这条路径。

请注意,如果你的路线末端有默认的MVC路线,它会首先匹配这条路线。然后您将收到一个错误,因为它将使用Employees操作查找History控制器。