QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中。如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法。但是对于传递数组或对象的话,就不能用这个方法了。
Session相当强悍的一个东西..不过用的多会使服务器内存资源的耗尽
Application对象的作用范围是整个全局,也就是说对所有用户都有效,一般用于测试网站访问量的
Cookie与Session一样,其实是对每一个用户而言的,但是有个本质的区别,即Cookie是存放在客户端的,而session是存放在服务器端的。而且Cookie的使用要配合ASP.NET内置对象Request来使用。
Server.Transfer这个才可以说是面象对象开发所使用的方法,其使用Server.Transfer方法把流程从当前页面引导到另一个页面中,新的页面使用前一个页面的应答流,所以这个方法是完全面象对象的.

解决方案 »

  1.   

    Server.Transfer 只能在本网站内
    querystring可以传递到其他网站,如<a href="www.abc.com?id=1">或response.redirect("www.abc.com?id=1")
    另外还可以使用跨网页传递 也可以传递到其他网页 具体在button,imagebutton,linkbutton都有postbackurl属性,在这里设置要传递的目标网页,然后在目标网页中取值,具体用法很简单,搜一下就可以
      

  2.   

    querystring 是用get方式传递的,,就是加在url后面的xxxx.aspx?id=2  这种的
    Session  蛮好用的,但消耗资源啊
    如果你要传送的值很多时,那就建个类,用属性来存这个值
      

  3.   


    querystring 是把值存到URL中 取值的时候也是从URL中取
    Session 是把值存到整个会话中,浏览器不关,Session中的值就存在
    Application 中的值是整个服务器的 只要服务器不关闭 Application中的值就存在
    Cookie 有两种存值方式 一种跟Session 一样存在与整个会话 还有一种是可以设置Cookie 的存活时间
    Server.Transfer ..... 是属于跳转页面,它属于服务器端跳转,URL不变所以用户看不出来服务器跳到了哪个页面
      

  4.   

    楼上的回答好像有点错误
    Session 默认是20分钟消失,不是浏览器不关,Session中的值就存在 
    可以通过Session.timeout 来设置消失时间,单位是分钟
    如Session.Timeout=1 
      

  5.   

    页面之间 传值 我以为 使用 querystring 好,数据量不可太大
      

  6.   

    querystring 就是字符串带来带去的,不安全,也繁琐。
    session 最好用,因为它在服务器上给客户端生成一个唯一的身份识别。做客户跟踪最好。
    Application 一般用来统计,整个网站的访问当前在线人数,诸如此类的应用。
    Cookie 一般是在客户的机器上生成一个标记,用来识别客户身份。一般这样不安全。因为可以伪造身份。
    Server.Transfer 没用过,不敢妄加评论。