重命名URL中的控制器名称

时间:2015-01-28 06:31:42

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

我有2个品牌使用相同的控制器。在一个品牌中,URL必须看起来像〜Home / Index,而在其他URL中应该看起来像~Fount / Index,但这两个URL必须指向相同的Home Controller操作方法。

请知道如何实现这一目标。

2 个答案:

答案 0 :(得分:0)

RouteConfig.cs

中指定2条路线
 routes.MapRoute(
                name: "Default",
                url: "Home/{action}/{id}",
                defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
            );               

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

使用此网址调用Index()控制器

中的Home方法

1)http://localhost/../Home/Index

2)http://localhost/../Account/Index

答案 1 :(得分:0)

将以下代码放在Global.asax.cs

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

*注意:始终默认名称放在golbal.asax.cs的最后一行