我怀疑为什么要使用ViewState,因为Session可以在整个应用程序中保持其状态。那么为什么需要只将状态保持在单个Page中的ViewState?
最佳答案
首先首先要知道什么是
查看状态
是webforms
中特定页面的信息。它存储在隐藏字段中。用于保持页面记住他上次所做的操作。
届会
是与特定会话相关的信息。某些浏览器
现在来问你的问题
什么时候使用而不是群集F ......
自从MVC引入以来,我猜所有这些都有各自的优点和缺点,特别是ViewSate
是一个缺点。
可以使用viewstate
存储值以记住页面每次回发时的情况,当页面处于回发阶段时,它将删除用户控件的所有值。如asp.net中的Label
和TextBox
。因此,要将您要EnableViewState
属性的值保留为true
另一方面,当您希望在页面之间移动时,可以使用会话,以便为所有页面保留特定的值。例如:一个使UserId
保持会话状态,以便他可以访问所有需要某种authorization
或authentication
的页面
更新资料
当您更改时,我在输入时会提出以下问题:
在这种情况下
会话用于特定时间,而Viewstate
不是,因为Viewstate
是临时存储机制。使用Controls
的viewstate
将其state
呈现为html页面中的隐藏输入。
希望这会以任何方式对您有所帮助,不要担心会被否决而使用它
关于c# - 您何时可以选择在 session 上使用ViewState?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37495535/