www.cftea.com

ASP.NET C# Session 笔记几则

ITPOW2017/2/13 10:56:01

一、Session.Add 名称相同时,不会重复,而是覆盖。

Session.Add("s1", 1);
Session.Add("s1", 2);
// s1 最终只有一个值,就是 2。

二、名称忽略大小写。

Session.Add("s1", 1);
Response.Write(Session["S1"]); // 值为 1

三、Session Add 后立刻就可取到值(Remove 同理),这点不同于 Cookie,Cookie 要等到下个页面才有。

Session.Add("s1", 1);
Response.Write(Session["s1"] == null); // False,它不为 null

四、存储的 Session 数据类型为 object,最好用 Convert 转换。

Convert.ToInt32(Session["s1"]);

如果转换为 string 最好用 Convert.ToString(),而不是 Session["s1"].ToString(),因为如果 Session 为 null,用后法就会报错。

HttpContext.Current.Session 为何为 null?

五、在类中使用 Session。

System.Web.HttpContext.Current.Session

六、Session.Remove(name)

name 对应的 Session 不存在时,Remove 会出错吗?不会。

相关阅读

<<返回首页<<