当前位置:  开发笔记 > 前端 > 正文

如何重定向到ASP.NET MVC中的调用页面?

如何解决《如何重定向到ASP.NETMVC中的调用页面?》经验,为你挑选了2个好方法。

假设我有一个控制器动作,用于删除用户购物篮中的某个项目.通过对url~/delete/{id}执行POST来触发此控制器操作.如果我的应用程序上有多个页面将发布到此URL,我该如何构建控制器操作以重定向回发布到它的页面?



1> Christian Da..:

您应该从发布页面提供RedirectToUrl参数.

依赖引用标头不是一个好习惯.

相反,做这样的事情:

public ActionResult Delete(int id, string RedirectToUrl)
{
  // check if RedirectToUrl is null or empty and redirect accordingly
}

在发布视图或部分视图上,您​​可以通过多种方式提供参数:

<%= Html.Hidden("RedirecToUrl","/my/lovely/url") %>

要么

我更喜欢第一种选择.


这就是我们所做的,但我强烈建议"清理"传递的重定向网址,如果它不属于您的网站,则忽略它.这也适用于引荐来源标头.

2> DenNukem..:

我就是做这个的:

    public ActionResult ResendActivationEmail()
    {
        // Do other things here
        return new RedirectResult(Request.UrlReferrer.AbsoluteUri);
    }

推荐阅读
周扒pi
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有