代码之家  ›  专栏  ›  技术社区  ›  Omu

如何重定向到ASP.NET MVC中的同一个路由(来自请求的位置)

  •  6
  • Omu  · 技术社区  · 15 年前

    我正在从部分视图发布一个表单,该表单通过 Html.RenderAction 我希望在表单发布之后重定向到请求来自的相同路径。

    public ActionResult Index()
    {
        return PartialView();
    }
    
    [HttpPost]
    public ActionResult Index(FormModel input)
    {
         ...
         return //Redirect to the same route
    }
    

    有人知道怎么做吗?

    2 回复  |  直到 15 年前
        1
  •  2
  •   Castrohenge    15 年前

    您可以从请求对象检索urlreferr:

    return Redirect(HttpContext.Request.UrlReferrer.OriginalString);
    
        2
  •  1
  •   Jace Rhea    15 年前

    我将向表单post添加一个查询字符串,您可以使用它在控制器操作中进行重定向。

    <form action="example.com/model/edit?returnurl=http://example.com/Form" method="post">
    

    控制器操作…

    [HttpPost]
    public ActionResult Index(FormModel input, string returnUrl)
    {
         ...
         return Redirect(returnUrl);
    }