【ASP.NET】基础补习之ViewState
Viewstate工作原理
viewstate是由 ASP.NET 页面框架管理的一个隐藏的窗体字段。viewstate的值保存在浏览器的html代码中, 用来保存用户的状态信息。当 ASP.NET 执行某个页面时,该页面上的 ViewState 值和所有控件将被收集并格式化成一个编码字符串,然后被分配给隐藏窗体字段的值属性(即 <input type=hidden>)。viewstate用于在本页面之内传递“公共变量”。使用viewstate可以避免页面刷新时,重置变量。ViewState有效期等于页面的生命周期。
Viewstate使用留意点
1.由于viewstate存车处所有信息在页面里,数据太多会影响页面刷新速度。session存储数据在内存里,随着网站访问量的增大内存消耗也会增加。请酌情使用viewstate和session。
2.如果要使用 ViewState,则在 ASPX 页面中必须有一个服务器端窗体标记 (<form runat=server>),这样包含 ViewState 信息的隐藏字段才能回传给服务器。同时服务器上执行该页面时,ASP.NET 页面框架才能添加隐藏的字段。 另外所有的Web服务器控件都是用ViewState在页面PostBack期间保存状态。
ViewState使用方法
Private Property PassWord() As String
Get
Return CType(ViewState("PassWord"), String)
End Get
Set(ByVal value As String)
ViewState("PassWord") = value
End Set
End Property
viewstate是由 ASP.NET 页面框架管理的一个隐藏的窗体字段。viewstate的值保存在浏览器的html代码中, 用来保存用户的状态信息。当 ASP.NET 执行某个页面时,该页面上的 ViewState 值和所有控件将被收集并格式化成一个编码字符串,然后被分配给隐藏窗体字段的值属性(即 <input type=hidden>)。viewstate用于在本页面之内传递“公共变量”。使用viewstate可以避免页面刷新时,重置变量。ViewState有效期等于页面的生命周期。
Viewstate使用留意点
1.由于viewstate存车处所有信息在页面里,数据太多会影响页面刷新速度。session存储数据在内存里,随着网站访问量的增大内存消耗也会增加。请酌情使用viewstate和session。
2.如果要使用 ViewState,则在 ASPX 页面中必须有一个服务器端窗体标记 (<form runat=server>),这样包含 ViewState 信息的隐藏字段才能回传给服务器。同时服务器上执行该页面时,ASP.NET 页面框架才能添加隐藏的字段。 另外所有的Web服务器控件都是用ViewState在页面PostBack期间保存状态。
ViewState使用方法
Private Property PassWord() As String
Get
Return CType(ViewState("PassWord"), String)
End Get
Set(ByVal value As String)
ViewState("PassWord") = value
End Set
End Property
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通