我可以隐藏路线的一部分吗?

时间:2014-02-10 23:52:03

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

我有一个AppController和一个AccountController。 AppController只有一个视图index,它从网址的id部分获取查询字符串参数。

默认路线如下:{controller}/{action}/{id} 这意味着要使查询字符串参数正常工作,视图名称必须位于url中。 url/view/id

我想隐藏该部分网址并默认呈现该视图,因此用户只需转到url/id

我尝试了{controller}/{id}{controller}/index/{id},但都没有效果。

1 个答案:

答案 0 :(得分:2)

我认为这会奏效。将网址设置为:"{controller}/{id}"并为其指定默认操作参数:

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