RedirectToAction没有刷新页面

Dan*_*Dan 9 asp.net asp.net-mvc

我有一个场景,我在一个视图页面,并在控制器A中调用一个动作方法,通过RedirectToAction返回调用控制器B中的另一个动作,此动作返回我已经在的视图.

我希望页面刷新以反映这两个操作所做的系统状态的更新,但MVC似乎决定页面不需要刷新,因为我返回到相同的视图.如何强制刷新?

例:

//user is on A/index, and submits a form that calls this in contoller B
public ActionResult ActionInControllerB()
{
     //do stuff
     return RedirectToAction(ActionNames. ActionInControllerA, ControllerNames.A);
}

public ActionResult ActionInControllerA()
{
     //do stuff
     return View("index");
}
Run Code Online (Sandbox Code Playgroud)

Cle*_*ton 9

我猜你正在遇到缓存问题.

使用以下命令装饰ActionInControllerB和ActionInControllerA方法:

[OutputCache(Location=System.Web.UI.OutputCacheLocation.None)]
Run Code Online (Sandbox Code Playgroud)


Dav*_*her 0

我在这里会有点含糊,因为我不太确定,但我以前见过类似的东西(而且没有其他人回答)。问题可能是在重定向之前尚未处理或刷新更新事务。例如,NHibernate 有时会等待向数据库提交更新,直到我认为处理了响应之后。

如果是这种情况,那么无论您在控制器 A 中执行什么操作,都不会获取更改。也许您可以尝试以某种方式强制处理数据库提交。

抱歉,但这是我能想到的唯一可能性。你必须穿上你的 google-fu 服装和头带!