如何MapRoute到子控制器

时间:2015-08-20 11:42:41

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

我有一个文件AdminController.cs,它当前包含我网站管理部分中每个操作的控制器。显然,这变得越来越大,我想将控制委托给每个应用程序的不同控制器。

例如:

<?php if ( is_user_logged_in() ) { $avatarPath = wsl_get_user_custom_avatar ($current_user->ID)?wsl_get_user_custom_avatar ($current_user->ID):'http://img.thehobbyblogger.com/2012/08/mystery-man-avatar.png'; echo '<img class="avatar" src="'.$avatarPath.'" alt="avatar"> Welcome '.$current_user->display_name.', Please help our community grow by liking and sharing! <br> <a class="logout" href="'. wp_logout_url() .'">Logout</a>'; } else { echo '<h2>1 Click Login</h2>'; } ?> <?php do_action( 'wordpress_social_login' ); ?> 目前希望AdminController.cs决定做什么。因此,当用户添加汽车时,AdminController.cs中有一个名为AddCar()的ActionResult。我希望这样找到www.mysite.com/Admin/Car来查找AddCar()。

所以经过一些研究后,我将其添加到我的RouteConfig文件中:

CarController.cs

我评论了与Car&#39; Car&#39;相关的ActionResults。在AdminController中,并将它们添加到CarController。

然而,我得到了&#34;无法找到资源。&#34;当我导航到routes.MapRoute( name: "/Admin/Car" url: "{parent}/{controller}/{action}", defaults: new { parent = "Admin", action = "Index" }, constraints: new { controller = "Car"} ); 时。

如何使用其他控制器,但网址仍在www.mysite.com/Admin/Car领域?

1 个答案:

答案 0 :(得分:0)

您可以将控制器操作'Car'添加到Admin控制器,该控制器重定向到Car控制器中的相关操作。但是,区域可能就是你想要的。