2011-02-15 204 views
-1

我使用ASP.Net MVC2 C#和我有一个网址,如下所示:URL路由的Asp.net MVC

的http://本地主机:2107 /新闻/新闻首页/ NewsDetails/Celebrate_the_dedication_of_healthcare_quality_professionals_during_National_Healthcare_Quality_Week

这里新闻是面积和新闻首页是控制器,但我想要的网址看起来像这样

的http://本地主机:2107/NewsDetails/Celebrate_the_dedication_of_healthcare_quality_professionals_during_National_Healthcare_Quality_Week

是否有任何选项从URL获得区域和控制器的名字吗?

回答

0

定义一个新的路线

routes.MapRoute(
     "News", // Route name 
     "{controller}.aspx/{action}/{id}", // URL with parameters 
     new { area="News", controller = "NewsHome", action = "Index", id = UrlParameter.Optional } // Parameter defaults 
    ); 
2

您可以定义一个路由像"NewsDetails/{name}并指定defaults参数方面,控制器和动作(例如,new { area = "News", controller = "NewsHome", action = "NewsDetails" })。

如果您将路线定义为"{action}/{name}",它也会吞噬所有其他路线。