【问题标题】:difference between 'Response.Redirect' and 'Server.Tansfer' [duplicate]“Response.Redirect”和“Server.Transfer”之间的区别[重复]
【发布时间】:2014-01-12 22:40:59
【问题描述】:

大家,我必须启动我的代码, 第一种方式:

Response.Write("<script>alert('Succeed,Will be redirect to the target page')</script>");
string path = Server.MapPath(@"~\Forms\MainForm_SQL.aspx");
Response.Redirect(path);

第二种方式:

Response.Write("<script>alert('Succeed,Will be redirect to the target page')</script>");
Server.Transfer(@"~\Forms\MainForm_SQL.aspx");

现在,回到问题,问题是:

01)使用“第一种方式”时它不起作用,即它要么提醒消息,要么进入目标页面的'Page_Load'。

02),当使用第二种方式时,它首先进入目标的'Page_Load',然后返回警报消息。

为什么跟踪架构如此遥不可及?有人能帮助我吗? 谢谢。

【问题讨论】:

  • 不要创建重复的问题,谢谢。

标签: asp.net webforms


【解决方案1】:

IIRC,Server.Transfer 是内部的——也就是说,它会将处理移交给目的地,而不会将客户端退回到另一个页面——而 Response.Redirect 告诉客户端转到新的 URL。

【讨论】:

  • 感谢您的回复,但您能否解释一下,为什么很多时候,Response.Redirect 不起作用?还是语法有问题?即使我只是评论 alert('Succeed,Will be redirect to the target page')>");
  • Response.Redirect 基本上告诉客户端在别处提交请求。但是第二个请求可能不包括所有表单变量等。如果你指望他们在那里......
  • 感谢您的回复,但您似乎没有得到我所说的第二次,实际上,我自己找到了问题并且那个'手动错误,我重命名了.aspx文件,但是除非我在代码隐藏中再次重命名,否则实际名称不会改变。您给出的第一个答案对我很有帮助,非常感谢。
猜你喜欢
  • 2011-10-10
  • 2014-08-16
  • 2011-04-08
  • 2012-11-24
  • 2013-06-05
  • 2021-09-29
  • 2020-05-27
  • 2016-03-23
  • 2012-08-11
相关资源
最近更新 更多