asp.net mvc2路线

时间:2010-09-22 13:44:04

标签: asp.net-mvc-2 routes

所以我已将此路线添加到我的地图中:

    routes.MapRoute(
        "Default", 
        "/Bikes/{id}", 
        new { controller = "Bike", action = "Detail" }
    );

但出于搜索引擎优化的原因,我们需要提供以下网址: / bikes / 54 /自行车名称/自行车种类/车轮数量等等。但是id(54)之后的所有内容都可以忽略。

有没有人知道如何创建这样的MapRoute以允许这样做,上面的路由实际上不适用于包含id之后的东西的网址。

2 个答案:

答案 0 :(得分:3)

你可以使用像这样的catchall参数

routes.MapRoute(
    "Default", 
    "/Bikes/{id}/{*stuff}", 
    new { controller = "Bike", action = "Detail", stuff = UrlParameter.Optional }
);

然后id之后的任何东西都会存储在东西

答案 1 :(得分:1)

像这样的东西

routes.MapRoute(
    "Default", 
    "/Bikes/{id}/{slug*}", 
    new { controller = "Bike", action = "Detail", 
          slug = UrlParameter.Optional}
);
相关问题