从一个区域的动作重定向到“根”区域中的动作?

Posted

技术标签:

【中文标题】从一个区域的动作重定向到“根”区域中的动作?【英文标题】:Redirect from one Area's action to a action in the "root"-area? 【发布时间】:2011-01-04 18:52:09 【问题描述】:

我使用的是最新版本的 ASP.Net MVC 2 RC。

我的问题是,如何从“博客”区域中的一个操作重定向到应用程序“根”(无区域)中存在的主控制器中的索引操作?

我试过了:

return RedirectToAction("index", "home");

但这会重定向到 /Blog/home,其中 Blog 是我所在区域的名称。

【问题讨论】:

【参考方案1】:

试试这个:

return RedirectToAction("index", "home", new  area = "" );

【讨论】:

谢谢,它成功了。但是,ViewData 似乎丢失了:S 我将使用 Sessions 代替 :)【参考方案2】:

如果使用默认路由,这也应该可以,但不确定 ViewData 会发生什么。

return Redirect("~/");

【讨论】:

这对我不起作用,但我没有投反对票,因为它可能对其他人有用。

以上是关于从一个区域的动作重定向到“根”区域中的动作?的主要内容,如果未能解决你的问题,请参考以下文章

从动作过滤器属性重定向

从一个控制器动作发布到另一个控制器动作(不重定向)

如何重定向到同一控制器中的另一个动作?

在 Play 框架中重定向到同一控制器中的动作

Play framework 1.x 重定向删除动作

ASP.NET MVC 3 - 重定向到另一个动作