zoukankan      html  css  js  c++  java
  • asp.net服务器端跳转页面的三种方法

        1 Response.Redirect 这个跳转页面的方法跳转速度不快,因为它要走 2 次回发 (postback)

        它可以跳转到任何页面,没有站点页面限制 ( 可以由 baidu 跳转到 google) ,但不能跳过登录保护。

    速度慢 是其最大缺陷!

    Redirect 跳转机制:首先是服务器端发送一个 http 请求到客户端,通知需要跳转到新页面,然后客户端再发送跳转请求到服务器端。需要注意的是跳转后内部空间保存的所有数据信息将会丢失,所以需要用到 session

     

         2 Server.Transfer 速度快,只需要一次 postback ,但它 必须是在同一个站点 内跳转。

    Server.Transfer 的重定向请求发生在服务器端,仅仅将此控件传递到新的网页并且不在客户端重新定位该网页,所以浏览器的 url 地址仍然是原页面的地址!另外,它 能跳过登录保护

    默认情况下, Transfer 方法不会把表单数据或查询字符串从一个页面传递到另一个页面,但是如果把该方法的第二个参数设置成 true ,就可以保留原先页面的表单数据和查询字符串。

    Server.Transfer("hyj.aspx"); // 服务器停止执行本页,保存本页的当前数据后,再使页面转向 hyj.aspx ,并将跳转之前数据加上 hyj.aspx 页面执行的结果返回给浏览器。

     

        3 Sever.Execute 这个方法主要是用在页面设计上,它 必须是在同一个站点 内跳转,也只需要一次 postback

        这个方法是需要将一个页面的输出结果插入到另一个 aspx 页面的时候使用,大部分是在表格中将某一个页面类似于嵌套的方式存在于另一页面。

    Server.Execute("hyj.aspx");// 服务器保存此页的当前数据后,使页面转向到 hyj.aspx 执行,在 hyj.aspx 执行之后又返回本页继续执行,再将三者结果合并后返回给浏览器。

    Execute 方法跳转类似于 函数调用

     

     

        如何选择页面重定向的方法:

        asp.net 中页面跳转方式 ----Redirect Transfer Execute 、超链接、 HyperLink 控件。

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

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

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

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

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

        当需要用户来决定什么时候跳转页面,就使用超链接。

        要用程序来控制转换的目标,但转换的时机由用户决定,使用 Web 服务器的 HyperLink 控件,动态设置其 NavigateUrl 属性。

  • 相关阅读:
    卡特兰数
    hdu 1023 Train Problem II
    hdu 1022 Train Problem
    hdu 1021 Fibonacci Again 找规律
    java大数模板
    gcd
    object dection资源
    Rich feature hierarchies for accurate object detection and semantic segmentation(RCNN)
    softmax sigmoid
    凸优化
  • 原文地址:https://www.cnblogs.com/hanwest/p/2881898.html
Copyright © 2011-2022 走看看