我们如何在没有控制器的情况下在asp.net mvc中路由?

时间:2014-04-17 16:52:38

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

我必须路由我的mvc应用程序,例如www.MySite.com/User123。就像facebook一样,http://facebook.com/UserId将描述所有用户信息。  我尝试了这个但它不起作用。

routes.MapRoute( _
          name:="Default", _
          url:="{id}", _
          defaults:=New With {.id = "user"} _
      )

1 个答案:

答案 0 :(得分:1)

如果您尝试路由到特定控制器并执行操作而不在URL中使用它们,则需要将它们指定为默认值。你的路线是这样的:

routes.MapRoute(
    name: "Profile",
    url: "{id}"
    defaults: new { controller = "Profile", action = "Show" }
);

这会给你一条路线来映射" http://www.mysite.com/user123" Show上的ProfileController操作,将user123作为ID参数传递。

public class ProfileController : Controller
{
    public ActionResult Show(string id)
    {
        ...
    }
}