设为首页  
联系我们  
加入收藏  
网页制作 冲浪宝典 图形图像 操作系统 软件教学 编程开发 认证考试 安全技术 站长专区 文学驿站 娱乐天地 游戏天地 办公软件
文章搜索
您的位置: 首页 >> 文章首页 >> 编程开发 >> 网络编程 >> ASP.NET基础 >> asp.net跳转页面的三种方法比较
精品推荐
ASP.NET基础点击TOP10
·十天学会ASP.net之第一天
·ASP.NET构架与安全机制之Http请求处理
·十天学会ASP.net之第三天
·ASP.NET技巧:DataGrid传统分页方式
·asp.net 操作xml
·十天学会ASP.net之第二天
·十天学会ASP.net之第四天
·学习掌握.NET的第一步
·优秀ASP.NET程序员修炼之路
·最佳ASP.NET编程习惯
网络编程点击TOP10
·C#编写的windows计算器-源代码
·ASP.NET 程序中常用的三十三种代码
·『原创』C#中TreeView类操作全攻略:建立树,新增节点,删除节点,修改节点,拖动节点,与Oracle数据库交互操作(一)
·用C#实现木马程序
·VS.net 2005 Beta 下载地址(Express Edition)
·从零开始学ASP.NET(基础篇)
·"SQL Server不存在或访问被拒绝"问题的解决
·C#版的网站新闻发布系统
·.NET 初 级 读 本
·c#操作word表格
精选专题

asp.net跳转页面的三种方法比较

作者: 来源:http://www.xgdown.com/ 时间:2007-10-10 12:57:39

  1、 response.redirect 这个跳转页面的方法跳转的速度不快,因为它要走2个来回(2次postback),但他可以跳 转到任何页面,没有站点页面限制(即可以由雅虎跳到新浪),同时不能跳过登录保护。但速度慢是其最大缺陷!redirect跳转机制:首先是发送一个http请求到客户端,通知需要跳转到新页面,然后客户端在发送跳转请求到服务器端。需要注意的是跳转后内部空间保存的所有数据信息将会丢失,所以需要用到session。

  2、 server.transfer 速度快,只需要一次postback ,但是。。。。他必须是在同一个站点下,因为它是server的一个方法。另外,他能跳过登录保护。你可以写个小程序试试:设计一个由页面一到页面二的跳转,但要进入到页面二需要登录,form认证,但如果跳转语句使用transfer的话,那就不会弹出登录页面了。这个方法的重定向请求是发生在服务器端,所以浏览器的url地址仍然保留的是原页面的地址!

  3、 sever.execute 这个方法主要是用在页面设计上面,而且他必须是跳转同一站点下的页面。这个方法是需要将一个页面的输出结果插入到另一个ASPx页面的时候使用,大部分是在表格中,将某一个页面类似于嵌套的方式存在于另一页面。

  总结:

  当需要把用户跳转到另一台服务器上的页面的时候 ,使用redirect

  当需要把用户跳转到非aspx页面时候,如html,使用redirect

  需要把查询字符串作为url一部分的时候保留传给服务器的时候,因为其他2种方法不能做到2次postback,把数据先带回服务器,使用redirect

  需要aspx页面间的转换(不涉及登录),使用transfer

  当需要把aspx页面的输出结果插入到另一个aspx页面的时候使用 execute方法。

  当然,忘记了还有一个超链接!当然这个就不需要讲太多了。他是在当需要用户来决定什么时候跳转页面,就使用超链接。

  顺便提一下,如何使用redirect方法在查询字符串中使用汉字,因为经常的情况是出现乱码,原因是url不支持汉字。这个时候需要转换:

  string message =server.urlencode("欢迎来到赛跑专栏");

  先转换,再使用查询字符串

  response.redirect("webform2.aspx?msg="+message);


asp.net跳转页面的三种方法比较 相关文章:
asp.net跳转页面的三种方法比较 相关软件:
特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
转载请注明来源:http://www.xgdown.com