CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  VB.NET

web页面间的定向传值(不用Session)如何实现

楼主zzmdegm(剑心)2006-03-10 00:19:48 在 .NET技术 / VB.NET 提问

rt 问题点数:20、回复次数:11Top

1 楼hdt(倦怠)回复于 2006-03-10 06:03:40 得分 2

request  
  Top

2 楼lhx1977(清水无鱼)回复于 2006-03-10 07:31:02 得分 2

viewstate是 不是也可以实现。  
  cookies也可以  
  Top

3 楼zhanqiangz(闲云野鹤-Overriding)回复于 2006-03-10 09:26:47 得分 2

Get方法:以url中参数的形式传递  
  Post方法:以http消息形式传递  
  Viewstate:不可以,不能跨页面,只能本页面内存储数据。  
  Cookie:是可以的。Top

4 楼zzmdegm(剑心)回复于 2006-03-10 12:49:43 得分 0

能不能给代个代码列子啊!Top

5 楼zhanqiangz(闲云野鹤-Overriding)回复于 2006-03-10 12:55:32 得分 0

网上搜吧,一堆一堆的,都是很基础的东西。Top

6 楼wuyq11((人生如梦))回复于 2006-03-10 12:56:46 得分 2

Application[""]=值  
  接收页  
    变量=Application[""]Top

7 楼yuanarea(Sail before)回复于 2006-03-10 13:06:21 得分 2

Get方法:以url中参数的形式传递  
  Post方法:以http消息形式传递  
  Viewstate:不可以,不能跨页面,只能本页面内存储数据。  
  Cookie:是可以的。  
  或定义个静态类,全局访问Top

8 楼zzmdegm(剑心)回复于 2006-03-10 13:24:02 得分 0

ASP.NET   WEB   FORMS   页面间的传值方法  
   
                ASP.NET   WEB   FORMS     给开发者提供了极好的事件驱动开发模式。然而这种简单的应用程序开发模式却给我们带来了一些小问题,举个例子,在传统的ASP应用程序中,你能够通过POST方法很容易的把一个值或多个值从一个页面传送到另一个页面,用同样的方法在ASP.NET中实现有点麻烦。在这里,我们可以通过其他方式来解决这种情形。ASP.NET为我们提供了三种方式,一种是可以通过用QueryString来传送相应的值,再一种是通过session变量来传送相应的值,还有就是通过Server.Transfer方法来实现。下面分别一一介绍:  
   
   
  一、使用Querystring  
  Querystring是一种非常简单的传值方式,其缺点就是会把要传送的值显示在浏览器的地址栏中,并且在此方法中不能够传递对象。如果你想传递一个安全性不是那么太重要或者是一个简单的数值时,用此方法最好不过了。下面通过一个小例子来完成传值工作,步骤如下:  
  1、创建一个web   form  
  2、在新建的web   form中放置一个button1,在放置两个TextBox1,TextBox2    
  3、为button按钮创建click事件  
  代码如下:  
  private   void   Button1_Click  
  (object   sender,   System.EventArgs   e)  
  {  
    string   url;  
    url="webform2.aspx?name="   +    
      TextBox1.Text   +   "&email="   +    
      TextBox2.Text;  
    Response.Redirect(url);  
  }  
  4、新建一个目标页面命名为webform2  
  5、在webform2中放置两个Label1,Label2  
  在webform2的Page_Load中添加如下代码:  
  private   void   Page_Load  
  (object   sender,   System.EventArgs   e)  
  {  
    Label1.Text=Request.QueryString["name"];  
    Label2.Text=Request.QueryString["email"];  
  }  
  运行,即可看到传递后的结果了。  
   
  二、使用Session变量  
   
  使用Session变量传值是一种最常见的方式了,此中方式不仅可以把值传递到下一个页面,还可以交叉传递到多个页面,直至把Session变量的值removed后,变量才会消失。举个例子看看:  
  1、创建一个web   form  
  2、在新建的web   form中放置一个button1,在放置两个TextBox1,TextBox2    
  3、为button按钮创建click事件  
  代码如下:  
  private   void   Button1_Click  
  (object   sender,   System.EventArgs   e)  
  {  
                  Session["name"]=TextBox1.Text;  
    Session["email"]=TextBox2.Text;  
    Response.Redirect("webform2.aspx");  
  }  
  4、新建一个目标页面命名为webform2  
  5、在webform2中放置两个Label1,Label2  
  在webform2的Page_Load中添加如下代码:  
  private   void   Page_Load  
  (object   sender,   System.EventArgs   e)  
  {  
    Label1.Text=Session["name"].ToString();  
    Label2.Text=Session["email"].ToString();  
    Session.Remove("name");  
    Session.Remove("email");  
  }  
  运行,即可看到传递后的结果了。  
   
  三、使用Server.Transfer  
  虽然这种方法有点复杂,但也不失为一种在页面传值的方式。  
  举个例子看看:  
  1、创建一个web   form  
  2、在新建的web   form中放置一个button1,在放置两个TextBox1,TextBox2    
  3、为button按钮创建click事件  
  代码如下:  
  private   void   Button1_Click  
  (object   sender,   System.EventArgs   e)  
  {  
    Server.Transfer("webform2.aspx");  
  }  
  4、创建过程来返回TextBox1,TextBox2控件的值代码如下:  
  public   string   Name  
  {  
    get  
    {  
      return   TextBox1.Text;  
    }  
  }  
   
  public   string   EMail  
  {  
    get  
    {  
      return   TextBox2.Text;  
    }  
  }  
  5、新建一个目标页面命名为webform2  
  6、在webform2中放置两个Label1,Label2  
  在webform2的Page_Load中添加如下代码:  
  private   void   Page_Load  
  (object   sender,   System.EventArgs   e)  
  {  
    //创建原始窗体的实例  
    WebForm1   wf1;  
    //获得实例化的句柄  
    wf1=(WebForm1)Context.Handler;  
    Label1.Text=wf1.Name;  
    Label2.Text=wf1.EMail;  
   
  }  
  运行,即可看到传递后的结果了。  
  Top

9 楼MonkWang(象写情书一样写程序)回复于 2006-03-10 13:35:53 得分 10

Response.Redirect("Precontract.aspx?参数名=参数值");  
    Requres.QureyString["参数名"];  
   
  另外还可以用ViewState和Cookie传!Top

10 楼MerlinSky(Merlin)回复于 2006-03-10 13:40:19 得分 0

建议找本ASP.net书先看一下Top

11 楼zzmdegm(剑心)回复于 2006-03-11 00:47:45 得分 0

string   url;  
    url="webform2.aspx?name="   +    
      TextBox1.Text   +   "&email="   +    
      TextBox2.Text;  
    Response.Redirect(url);  
  这个url的"&email="   中&与后面的参数名不能有空格Top

相关问题

  • 页面重定向和session问题
  • asp页面跟aspx页面session传值问题
  • 急呀,在线等!!!!SESSION过期,怎么样进行页面的重定向
  • 页面重定向问题。
  • 页面传值
  • 页面传值
  • 怎样在页面中取出注册session变量的值
  • 如何在iframe中,获取其它页面生成的session值?
  • 在ifrme中得到主页面的session的值
  • 切换了页面后,怎么保持session的值?

关键词

  • asp.net
  • 页面
  • webform
  • 代码
  • web
  • 命名
  • 值
  • 变量
  • 传递
  • textbox

得分解答快速导航

  • 帖主:zzmdegm
  • hdt
  • lhx1977
  • zhanqiangz
  • wuyq11
  • yuanarea
  • MonkWang

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo