【问题标题】:Renderaction refresh / redirect parent page渲染刷新/重定向父页面
【发布时间】:2023-09-28 02:46:01
【问题描述】:

我目前正在开发一个 asp.net 4 mvc 应用程序,我正在尝试找出在子控制器中提交表单后重定向/刷新父页面的最佳方法。

所以在我的主要观点中,我有

主视图

@Html.RenderAction("child")

子视图/控制器

[HttpPost]
public ActionResult Create() {    
    if (ModelState.IsValid) {
        // Save 
        Save();

        Response.Redirect(Request.Url.ToString()); <--- Redirects the main page hack
    }

    return PartialView();    
}

重定向/刷新托管渲染操作的主页的正确方法是什么?

DotnetShadow

【问题讨论】:

  • 尝试使用 RedirectToAction()
  • 我想我尝试了类似的方法并得到“不允许子操作执行重定向操作”

标签: asp.net-mvc-3 asp.net-mvc-4 asp.net-mvc-partialview renderaction


【解决方案1】:

只需检查默认帐户控制器(Internet 应用程序模板)如何为登录/注销操作设置此设置:

    public ActionResult LogOff()
    {
        (...)

        return RedirectToAction("Index", "Home");
    }

【讨论】:

  • 感谢您的指导,我确实注意到在这种情况下它是部分视图 @Html.Partial("_LoginPartial") 而不是 @Html.Renderaction("_LoginPartial") 所以我认为它可能不工作