如何从MVC3中的区域控制器中走出来?

man*_*nny 3 asp.net-mvc asp.net-mvc-routing asp.net-mvc-3

我的网址路由在"区域"文件夹中正常工作,这意味着我可以从任何一个控制器或视图到另一个,我怎么能从这个区域控制器出来到父控制器?

对于Ex:在我的控制器中,如果我给这条线它是从区域控制器出来并正常工作

//Homecontroller.cs inside Controllers folder
return RedirectToAction("../../Home");  
Run Code Online (Sandbox Code Playgroud)

编码出来并连接到父控制器的正确方法是什么?

Mar*_*len 8

您需要明确指定区域.区域是路由参数,就像控制器和操作一样.如果在生成URL时没有明确指定它(即调用RedirectToAction时),则假定当前值.哪个是当前控制器的区域.

例如:

return RedirectToAction( "Index", "Home", new {Area = "Test"} );
Run Code Online (Sandbox Code Playgroud)

要返回顶级控制器,请清除该区域,如下所示:

return RedirectToAction( "Index", "Home", new {Area = ""} );
Run Code Online (Sandbox Code Playgroud)