加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 具有绝对URL的Asp .Net MVC RedirectToAction

发布时间:2020-12-15 22:18:32 所属栏目:asp.Net 来源:网络整理
导读:我编写了一个在IFrame中运行的Asp .Net MVC应用程序.当我的一个控制器方法返回RedirectToAction()时,我希望顶部浏览器URL重定向到该地址,而不仅仅是我的IFrame.我该怎么做呢?因为我在另一个站点内运行,我需要将绝对URL传递给浏览器,即’ http://parentsite.
我编写了一个在IFrame中运行的Asp .Net MVC应用程序.当我的一个控制器方法返回RedirectToAction()时,我希望顶部浏览器URL重定向到该地址,而不仅仅是我的IFrame.我该怎么做呢?因为我在另一个站点内运行,我需要将绝对URL传递给浏览器,即’ http://parentsite.com/myapp/ {controller} / {action}’

我想这相当于将我的超链接的目标属性设置为’_top’,以便整个站点重定向(这将通过扩展HtmlHelper非常简单),但我如何为服务器端重定向执行此操作?

到目前为止,我的解决方案是覆盖OnResultExecuting,提取我打算重定向到的URL,然后重定向到Frame Breaker View,传递我最初打算重定向到的URL作为参数. Frame Breaker View简单地写出了一些javascript,它将顶级浏览器URL设置为我的原始URL.这种方法有一个比我想要的额外的HTTP请求,但至少没有违反任何MVC原则(我不认为!).思考?

谢谢

解决方法

使用Redirect()而不是RedirectToAction()并传入url.

编辑:

我认为你需要一些JavaScript来打破客户端的IFrame.重定向到URL只会影响当前帧.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读