我可以编写什么ASP.NET页面生命周期事件来确定发送的视图状态的大小?此外,是否可以在不解析渲染的HTML(如页面对象上的属性)的情况下确定大小,还是解析唯一的方法?
我想要做的是记录尺寸,特别是如果它们超过某个阈值.
解决方法
您可以继续编写viewstate函数SavePageStateToPersistenceMedium.这个函数也用于压缩视图状态…
例如…
- public abstract class BasePage : System.Web.UI.Page
- {
- private ObjectStateFormatter _formatter = new ObjectStateFormatter();
- protected override void SavePageStateToPersistenceMedium(object viewState)
- {
- MemoryStream ms = new MemoryStream();
- _formatter.Serialize(ms,viewState);
- byte[] viewStateArray = ms.ToArray();
- ....
- }
- }
一些参考.
http://www.codeproject.com/KB/viewstate/ViewStateCompression.aspx
http://forums.asp.net/p/1139883/3836512.aspx
http://www.dotnetcurry.com/ShowArticle.aspx?ID=67&AspxAutoDetectCookieSupport=1