Session[名称]=值
值可以是任意对象(Object)
如: Session["users"] = "张三";
从Session中取值就是这样
object obj= Session["users"]
向Session中存储数据都是经过自动装箱的
所以取出数据的时候都是Object类型
//若从Session中取值就要还原成原来的数据类型
例1 :
Session["userID"] = 1;//Session["userID"]中存储是的int类型
取值: int i = Convert.toInt32(Session["userID"]);//取出来就要还原成int类型(或者toString()也可以)
例2 :
Session["dt"] = new DataTable();//Session["dt"]中存储的是DataTable类型
那么取值就应该为:
DataTable dt = Session["dt"] as DataTable;//还原成DataTable类型
或者
DataTable dt = (DataTable)Session["dt"];//还原成DataTable类型
当然还有别的方法..这个用起来比较顺手```
最简单的用法:
public class Person
{
private string name = null;
public string Name
{
get
{
return this.name;
}
set
{
this.name = value;
}
}
}
假设有如下界面test.aspx,界面包含一个TextBox,初始为admin,在Page_Load事件可以编写如下代码:
Person p = new Person();
p.Name = this.txtName.Text;
Session["person"] = p;
Resonse.Redirect("show.aspx");
show.aspx的Page_Load事件代码:
Response.Write("<script>alert(" + ((Person)Session["person"]).Name + ");</script>");
Session["name"]=object(可以是任何的数据类型)
例题:如有一个 User类
User user=new User();
Session["User"]=User;
然后可以在任何此工程下的页面都可以使用。
使用:
User user=Session[“User”] as User;
user对象里的属性都可以直接获取。
0条大神的评论