Session.Remove("aa")和 Session["aa"]=null有什么区别吗?

来源:百度知道 编辑:UC知道 时间:2024/05/29 15:49:37
如题

按照字面是上面几位说的那样, 但事实是Session.Remove之后aa这个键还是会保留在Session中, 所以不要试图通过查找键名aa来判断aa有没有被remove, 一般通过把["aa"]置空, 通过空值来判断, 从这一点上说两者的行为是一致的
.net里面很多集合都有这种特性

aa 比如一个瓶子 Remove("aa") 是把整个瓶子都扔了, Session["aa"]=null 是吧瓶子里的东西倒光了,但瓶子还在

Session.Remove("aa")就不在存在aa的定义了
Session["aa"]=null,aa的定义还存在

一般Session["aa"]的值都是放在内存空间里面,如果当null的时候,内存空间里面就没有值了,但是他已经占一个内存空间, Session.Remove("aa")就是将他从内存空间里面排除了.他就不占内存空间了,好像是这样