Webform_状态保持

Session

使用Session变量传值是一种最常见的方式了,此中方式不仅可以把值传递到下一个页面,还可以交叉传递到多个页面,直至把Session变量的值removed后,变量才会消失。 
1、创建一个webform 
2、在新建的webform中放置一个button1,在放置两个TextBox1,TextBox2 
3、为button按钮创建click事件 
代码如下: 
  private void button_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=Se ion["Name"].ToString();
    Label2.Text=Se ion["Email"].ToString();
    Session.Remove("Name");
    Session.Remove("Email");
  }

//   Session是非常安全的,因为它存在于服务器的内存中,取数据也是最快的

  但是,Session不要滥用,因为会造成服务器内存溢出,导致服务器崩溃   Session里面不要放大东西,如果不用那么就会造成资源浪费   

  Session生命周期:20分钟

Cookies

Cookies里面可以存内容,但是存的只能是字符串
会话Cookies的生命周期是:20分钟
持久Cookies,保存时间由咱们网站代码来设置
Cookies是存在用户电脑的硬盘上

Application

它是全局对象,全局只有这一个对象 只要被创建出来,所有人取的值都是一样的 生命周期:永久 保存位置:服务端

赋值:Application["key"]=值; 取值:Application("key");

ViewState

理解成为病例

类似于中间过程,由于网页的不固定性,点击按钮会刷新,控件赋得值借助iewstate保存,把刷新前的值保存成专门代码。刷新后再赋值给控件

Repeater的Command操作

1、ItemCommand事件 :在Repeater中所有能触发事件的控件,都会来触发这一个事件

                                    后台创建:在Page_Load中  Repeater1.ItemCommand +=  ,然后双击Tab键创建

2、CommandName : 判断点击的是什么按钮,

                                后台调用:e.CommandName

3、CommandArgument : 触发事件所传递过来的主键值数据,放在这里面 界面值绑定时要用  单引号 !!!!!! 

                                      后台调用:e.CommandArgument 

原文地址:https://www.cnblogs.com/longhaijun/p/5972693.html