当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > ASP.NET页面的重定向

ASP.NET
在ASP.NET中如何用C#.NET实现基于表单的验证
ADO.NET Entity Framework 试水:并发
.Net的精髓:XML和SOAP
多语言开发的个人体验
ASP.NET Routing对请求的处理方式
探索.Net中的委托
使用 ASP.NET 加密口令
[ASP.NET] Session 详解
ASP+ 与 Java
从ASP迁移至ASP+
从ASP迁移至ASP+ ----------进入DataSet
从ASP迁移至ASP+ --将HTML表格转换为ASP+数据列表
从ASP迁移至ASP+ --处理会话变量(Session Variables)
ASP+ 与 Java(一)
ASP+ 与 Java(二)
asp+的论坛列表程序---代码部分
asp+的论坛列表程序---页面部分
什么是受管(managed)?
用c#写的asp+域名查询程序
ASP+联结数据库

ASP.NET页面的重定向


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 138 ::
收藏到网摘: n/a

      首先 Response.Redirect("a.aspx"),在保存此页的数据后,服务器将页面直接转向到a.aspx。 此方法有个缺陷,就是转向后会丢失此页所有的Request的参数,并且此方法是需要Client发起一个请求。

      在IIS 5.0 中引入了一个新的函数 Server.Transfer("a.aspx"),它很好地解决了转向后丢失此页Request参数的问题。并且由于它是从server端直接向下一页发起请求,所以不需要client再次发送请求。它与Response.Redirect的区别在于:Response.Redirect可以转向任何一个页面,而Server.Transfer只能转向同目录或子目录的网页;Response.Redirect转向时地址会变成跳转后的页面地址,而Server.Transfer转向时原地址不变,并且传递的参数值也被隐藏。

      另一个方法是Server.Execute(a.aspx),它和Server.Transfer功能类似。主要的区别在于,server.execute在转向a.aspx执行完成后,还会返回原来的页面继续处理。