Kaneboy.Web.ViewState使用说明
2004-08-18 13:06 无常 阅读(819) 评论(0) 编辑 收藏 举报Kaneboy.Web.ViewState使用说明
Monday, August 16, 2004 12:24 AMKaneboy.Web.ViewState使用说明
(一)概述
Kaneboy.Web.ViewState提供了以多种方式保存ViewState的能力。ASP.NET引擎默认是将ViewState作为页面上一个Hidden Field保存到页面上,但使用Kaneboy.Web.ViewState,我们可以改变ViewState的保存方式。
(二)使用步骤说明:
1、将Kaneboy.Web.ViewState的所有三个dll文件拷贝到正确的Web程序的/bin目录中。
2、修改web.config,在其中增加如下所示的配置节:
<configuration>
<configSections>
<section name="viewStateManagement" type="Kaneboy.Web.ViewState.ViewStateManagementConfig, Kaneboy.Web.ViewState" />
</configSections>
<viewStateManagement>
<handler mode="on" type="Kaneboy.Web.ViewState.SessionViewStateHandler, Kaneboy.Web.ViewState" />
</viewStateManagement>
</configuration>
其中<viewStateManagement>节点下的<Handler>节点用来指示使用哪种方式来保存ViewState,以及是否启用自定制的ViewState保存方式。
3、接管页面上默认的ViewState保存方式。你可以选择下面的两种方法之一:
(1)将要改变ViewState保存方式的页面的父类从默认的System.Web.UI.Page改为Kaneboy.Web.ViewState.ViewStatePageBase。
通常一个好的Web程序设计会让系统中所有的页面继承自一个自定义公共基页面类(而不是继承自默认的System.Web.UI.Page),以实现某些自定制的功能(比如所有页面错误的捕捉等等),如果有这样的设计,那么您只需要将这个自定义的公共基页面类继承自Kaneboy.Web.ViewState.ViewStatePageBase即可。
(2)在页面的代码中,override下面所示的两个方法:
protected override void SavePageStateToPersistenceMedium(object viewState)
{
Kaneboy.Web.ViewState.ViewStateManagement.SaveViewState(this, viewState);
}
protected override object LoadPageStateFromPersistenceMedium()
{
return Kaneboy.Web.ViewState.ViewStateManagement.LoadViewState(this);
}
(三)可以使用的ViewState保存方式
在上面提到的配置文件中<viewStateManagement>节点下的<Handler>节点的type属性用来指定使用哪种方法来保存ViewState,可以选择的方法包括:
(1) type="Kaneboy.Web.ViewState.CompressedHiddenFieldViewStateHandler, Kaneboy.Web.ViewState"
将ViewState压缩后保存到页面的一个Hidden Field中。
(2) type="Kaneboy.Web.ViewState.SessionViewStateHandler, Kaneboy.Web.ViewState"
将ViewState保存在服务器的Session中。
(3) type="Kaneboy.Web.ViewState.AspNet1_1ViewStateHandler, Kaneboy.Web.ViewState"
系统默认的ViewState保存方式,即将ViewState保存在一个名字为“__VIEWSTATE”的Hidden Field中。不推荐使用这个方法。
(四)如何扩展自定制的ViewState保存方法
通过继承Kaneboy.Web.ViewState.ViewStateHandlerBase,并重写其SaveViewState和LoadViewState方法即可,这两个方法分别用来保存ViewState和载入ViewState。
下载
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架