2009-07-24 80 views

回答

9

快一个衬垫 - 如果你想了解更多的细节,只是问

ViewState的是变量它保存页面的当前状态,该页面保存在页面的隐藏字段中(经常使用)

ApplicationState是一个变量,您可以在应用程序生命周期中存储值(可能会定期循环,而且不知道)(使用频率较低)

会话是您可以写入的变量,它会一直存在,直到它们到达您的网站为止关闭浏览器。 (禁止任何超时)。 (经常使用)

1

SESSION变量存储在服务器上,可以容纳任何类型的数据,包括引用,它们类似于windows应用程序中的全局变量,并使用HTTP cookie存储用于定位用户会话变量的密钥。

VIEWSTATE变量存储在浏览器中(不是cookie),而是存储在浏览器的隐藏字段中。另外,Viewstate只能保存字符串数据或可序列化的对象。

2

会话状态保存在服务器上。 会话状态通常会在用户不活动一段时间后清除。 可以坚持在内存中,这使得它成为一个快速的解决方案。这意味着状态不能在Web Farm/Web Garden中共享。 可以保存在数据库中,可用于Web Farms/Web Gardens。 会话死亡时清除 - 通常在闲置20分钟后。

ViewState保存在页面中。 视图状态在以后的帖子中发布在隐藏字段中。 在服务器和客户端之间来回传送,占用带宽。 没有到期日期。 在Web Farm/Web Garden中很有用

1

当我们使用视图状态来设计一个web应用程序时,它会一直保留它的状态,并保持它的当前位置。如果我们使用会话,它不会保留它的状态,所以当我们刷新浏览器时,它从最初的页面开始。

2

总之,区别如下

视图状态:

1. ViewState的一个网页表单的仅适用于在该网络表单

2.视图状态存储在页面中的一个名为_ViewState的隐藏字段中。 因此,如果您从页面导航,或者如果关闭了浏览器,ViewState将会丢失。

ViewState是由所有asp.net控制跨回传保持其状态

会话状态:

会话状态变量在所有页面可用,但只限于给定的单一会话。会话变量就像单用户全局数据。

2.会话状态变量存储在Web服务器上。

3.当用户会话超时时,会清除SessionState变量。默认值是20分钟。这是在web.config中配置

应用程序状态:

1.应用程序状态变量在所有页面和所有会话使用。应用程序状态变量就像多用户全局数据。

2.应用程序状态变量存储在Web服务器上。

3.当托管应用程序的进程重新启动时,将清除应用程序状态变量。

相关问题