asp.net – 为什么ViewStates而不是Sessions

为什么我们用来在ViewState中存储数据?即使我们有Sessions做同样的工作?

Session["Data"]

ViewState["Data"]     

有什么不同?

最佳答案 会话数据仅在当前会话处于活动状态时有效.通常,服务器会在半小时左右后删除会话.即使会话过期且您仍然在屏幕上显示该页面,ViewState也可用.该内容在视图中被序列化,并且每次打开页面时都会通过网络发送,或者发回表单.

另一件事是:例如,当您有一个页面的多个实例要保留名称时,您不希望表单的两个打开实例共享相同的变量.相反,您可以将其保存在视图中,在该视图中可以将该文件用于该页面,并仅保存该页面.

点赞