Webform 内置对象 Session对象、Application全局对象,ViewState

Session

每台电脑访问服务器,都有独立的session,key值都一样,内容不一样。

1.session保存在服务器上。

2.session没有持久性,保存周期就是20分钟。

重点: session不要滥用,不要不用,滥用会造成服务器溢出,不用会造成资源浪费。

赋值:Session["key"] = 值;
取值:string a = Session["key"];
清除: Session["key"]=null;

Application

Application["key"] 是所有的用户获取这个key里面的值都是一样的, 没有保存周期,他会一直保存着, 通常用作版本号

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

Repeater的Command操作:

  1. ItemCommand事件 —— 在Repeater中所有能触发事件的控件,都会来触发这一个事件
  2. CommandName —— 判断点击的是什么按钮,e.CommandName
  3. CommandArgument —— 触发事件所传递过来的主键值数据,放在这里面界面值绑定时要用 单引号 e.
  4. ItemCreated - 项模板中将HTML代码生成完毕时执行一遍此事件
  5. ItemDataBound - 项模板将数据绑定后执行一遍此事件

例子:

复制代码
复制代码
 <ItemTemplate>
                <tr class="tr_Item" style="<%#Eval("Blue") %>" >
                <td><%#Eval("UserName") %></td>
                <td><%#Eval("Password") %></td>
                <td><%#Eval("NickName") %></td>
                <td><%#Eval("SexName") %></td>
                <td><%#Eval("birthdayn" )%></td>
                    <td><%#Eval("Age" )%></td>
                <td><%#Eval("NationName") %></td>
                   <td><asp:Button ID="Button1" runat="server" Text="删除"  CommandName="delete" CommandArgument='<%#Eval("UserName") %>'/>
                       <asp:Button ID="Button2" runat="server" Text="修改" CommandName="xiugai" CommandName="delete" CommandArgument='<%#Eval("UserName") %>' />
                   </td>
                    
                    </tr>
            </ItemTemplate>
复制代码
复制代码

后台代码:

复制代码
复制代码
 if (e.CommandName == "delete")//删除按钮
        {
            new UserDA().delete(e.CommandArgument.ToString());
            Repeater1.DataSource = new UserDA().select();
            Repeater1.DataBind();
        }
        if (e.CommandName == "xiugai")
        {
            new UserDA().select(e.CommandArgument.ToString());
            Repeater1.DataSource = new UserDA().select();
            Repeater1.DataBind();
        }
复制代码
原文地址:https://www.cnblogs.com/zxh1314/p/8302012.html