Asp.net mvc 3 ASP.NET MVC 3中的动态路由

Asp.net mvc 3 ASP.NET MVC 3中的动态路由,asp.net-mvc-3,asp.net-mvc-routing,Asp.net Mvc 3,Asp.net Mvc Routing,我正在使用MVC3和razor构建一个博客引擎。在这个场景中,我给出了一些选项,比如一个用户可以有多个博客(类似于blogger.com) 现在假设一个用户“yasser”有以下3个博客 科技故事 游戏迷 回忆 因此,我希望所有其他用户通过以下URL访问这些博客 www.domainName.com/blogs/TechStory www.domainName.com/blogs/GameGeek www.domainName.com/blogs/MeMyStory 并且可以添加更多的博

我正在使用MVC3和razor构建一个博客引擎。在这个场景中,我给出了一些选项,比如一个用户可以有多个博客(类似于blogger.com)

现在假设一个用户“yasser”有以下3个博客

  • 科技故事
  • 游戏迷
  • 回忆
因此,我希望所有其他用户通过以下URL访问这些博客

  • www.domainName.com/blogs/TechStory
  • www.domainName.com/blogs/GameGeek
  • www.domainName.com/blogs/MeMyStory
并且可以添加更多的博客,因此将来会访问更多这样的url


我知道路由需要做些什么,但作为MVC的新手似乎不明白这一点。请有人给我指点一下。

将此路线添加到默认路线之上:

routes.MapRoute(
“博客”,
“Blogs/{blogName}”,
新建{controller=“Blogs”,action=“Index”}
);
您的控制器将如下所示:

public类BlogsController:Controller
{
公共操作结果索引(字符串blogName)
{
BlogModel model=//按博客名称查找博客
返回视图(模型);
}
}
还有一个建议:将控制器名称保持为单数模式:BlogController而不是BlogsController。如果您决定这样做,请相应地更改URL和路由