假设我有一个 Controller 操作,该操作将从用户的购物篮中删除一个项目。通过执行对URL〜/delete/{id}的POST触发此 Controller 操作。如果我的应用程序上有多个页面将发布到此URL,那么我该如何构造 Controller 操作以重定向回发布到该URL的页面?
最佳答案
您应该从发布页面提供RedirectToUrl参数。
依靠引荐来源 header 不是一个好习惯。
相反,请执行以下操作:
public ActionResult Delete(int id, string RedirectToUrl)
{
// check if RedirectToUrl is null or empty and redirect accordingly
}
在发布 View 或部分 View 上,可以通过几种方式提供参数:
<%= Html.Hidden("RedirecToUrl","/my/lovely/url") %>
或者
<form action="/item/delete/22?RedirectToUrl=/my/lovely/url">
我希望第一种选择。
关于.net - 如何在ASP.NET MVC中重定向到调用页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/495124/