ÈÃViewState ±£´æÓÚ·þÎñÆ÷¶ËÎļþ (asp.net C#)
½«ViewState³Ö¾Ã»¯±£³ÖÔÚ·þÎñÆ÷¶ËÎļþµÄ´úÂ룬ÕâÑùViewState²»Õ¼ÓÃÍøÂç´ø¿í£¬Òò´ËÆä´æÈ¡Ö»ÊÇ·þÎñÆ÷µÄ´ÅÅ̶Áȡʱ¼ä¡£²¢ÇÒËüºÜС£¬¿ÉÒÔ˵ÊÇ´ÅÅÌËæ±ãתһȦ¾ÍÄÜͬʱ¶ÁÈ¡ºÃ¶àViewState£¬Òò´Ë¿ÉÒÔ˵“²»Õ¼Ê±¼ä”¡£ÎªÁËÔÙ“²»Õ¼´ÅÅÌʱ¼ä”£¬ÎÒ»¹Ê¹ÓÃÁË»º´æ¡£
´´½¨Ò»¸ö»ùÀà:
public class
BasePage : System.Web.UI.Page
{
protected override object
LoadPageStatefromPersistenceMedium()
{
var viewStateID = (string)((Pair)base.LoadPageStatefromPersistenceMedium()).Second;
var stateStr = (string)Cache[viewStateID];
if (stateStr == null)
{
var fn = Path.Combine(this.Request.PhysicalApplicationPath, @"App_Data/ViewState/" + viewStateID);
stateStr = File.ReadAllText(fn);
}
return new ObjectStateFormatter().Deserialize(stateStr);
}
protected override void
SavePageStateToPersistenceMedium(object state)
{
var value = new ObjectStateFormatter().Serialize(state);
var viewStateID = (DateTime.Now.Ticks + (long)this.GetHashCode()).ToString(); //²úÉúÀëÉ¢µÄidºÅÂë
var fn = Path.Combine(this.Request.PhysicalApplicationPath, @"App_Data/ViewState/" + viewStateID);
ThreadPool.QueueUserWorkItem(obj => File.WriteAllText(fn, value));
Cache.Insert(viewStateID, value);
base.SavePageStateToPersistenceMedium(viewStateID);
}
}
}
Global.asax,ÒÔÏ´úÂëÒ²¿ÉÒÔ²»Óãº
protected void
Application_Start(object sender, EventArgs e)
{
DirectoryInfo dir = new DirectoryInfo(this.Server.MapPath("~/App_Data/ViewState/"));
if (!dir.Exists)
dir.Create();
else
{
DateTime nt = DateTime.Now.AddHours(-0.3); //ɾ³ý15·ÖÖÓÒÔǰµÄ»º´æÎļþ
FileInfo[] fiArr = dir.GetFiles();
foreach (FileInfo f in fiArr)
{
if (f.CreationTime < nt)
{
f.Delete();
}
}
}
}
ʹÓ÷½·¨:
ÆäËüÒ³Ã
Ïà¹ØÎĵµ£º
¹ØÓÚASP.NETƽ̨ϵÄWeb FormsºÍMVC£¬Õ§Ò»¿´À´£¬´óÓÐÒ»ÖÖ“¼ÈÉú褺ÎÉúÁÁ”µÄ¸Ð¾õ£¬µ«×øÏÂÀ´×Ðϸ˼¿¼£¬»¹ÊÇÓÐÆä¸÷×Ô´æÔڵĵÀÀíµÄ¡£Ê×ÏÈ,ÎÒÃÇÏÈÀ´¿´Ò»ÏÂWeb Forms, ¼¸ÄêµÄʵ¼ùÖ¤Ã÷Web FormsÊÇÒ»¸ö·Ç³£Îȶ¨ºÍ³ÉÊìµÄƽ̨£¬ÎÞÒÉËüÊÇÇ¿´óµÄ£¬µ«Ò²²»ÊÇÍêÃÀÎÞȱµÄ¡£´ÓÒÔϼ¸¸ö·½ÃæÀ´¿´ËüµÄÇ¿´óÖ®´¦£º
1¡¢ÐÔÄÜÓÅÐ ......
ÎÒʼÖÕÈÏΪ£¬¶ÔÒ»¸ö³õѧÕßÀ´Ëµ£¬IT½çµÄ¼¼Êõ·ç³±ÊDz»¿ÉÒÔ×·¸ÏµÄ£¬¶øÇÒҲûÓÐÄÜÁ¦È¥×·
¸Ï¡£ÎÒʱ³£¿´¼û×Ô¼ºµÄDDMMÃǰѿα¾ÈÓÁË£¬È¥ÂôЩ¼Û¸ñ²»·ÆµÄÖîÈçC#, VB.Net ÕâÑùµÄ´ó²¿
Í·£¬ÕâÈÃÎҸе½·Ç³£Í´ÐÄ¡£¶øÐí¶à¸ã²»ÇåÖ¸ÕëÊÇÕ¦»ØÊµÄBBSÕ¾ÓÑü·ÉÉ«ÎèµÄÌÖÂÛC#ÀïÃæ¿É
ÒÔ²»ÓÃÖ¸ÕëµÈµÈÔòÈÃÎÒ¾õµÃºÃЦ¡£C#¾ÍÏóµ±ÄêµÄASPÒ»Ñù ......
ÈÃÎÒÃǵijÌÐòдµÃ¸ü¼ÓƽÒ×½üÈË£¬¸ü¼ÓÉú¶¯¶ÔÎÒÃǵıà³ÌÊÇ´óÓÐÒæ´¦µÄ¡£¶ÔÎÒÃǵijÌÐòѧϰҲÄÜÆðµ½Ê°빦±¶µÄ×÷Óᣱà³Ì¹ý³ÌÖÐ×ñÊØµÄ²»³ÉÎĵıê×¼£¬¶ÔÓÚÎÒÃǺÍËûÈ˵Ľ»Á÷ºÍ×Ô¼ºµÄÔÙѧϰ¶¼ÊÇÓÐÒæÎÞº¦µÄ¡£±Ï¾¹ÓÐʱÎÒÃÇдµÄ³ÌÐò²»ÊÇÖ»¸ø×Ô¼º¿´µÄ£¬Ò²²»ÊÇһʱÐËÆð£¬²»¹ÜÒÔºó¡£ ºÃµÄ±àÂë¿ÉʹԴ´úÂëµÄ¿É¶ÁÐÔÇ¿ÇÒÒâÒåÇå³þ£¬ÓëÆäËûÓïÑÔÔ ......
Ò»¡¢Ð§¹ûͼ
1.¼òµ¥ÊôÐÔ
2.ÏÂÀ¿òÊôÐÔ
3.ÑÕÉ«ÊôÐÔ
4.°üº¬ÊôÐÔ
5.¼¯ºÏÊôÐÔ
±à¼Æ÷
6.ÈÕÆÚÊôÐÍ
¶þ¡¢³ÌÐò´úÂë
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Draw ......
ÈÎÖ°×ʸñ:
1. ´óѧ±¾¿ÆÒÔÉÏѧÀú£¬ÈýÄêÒÔÉÏÈí¼þ¿ª·¢¹¤×÷¾Ñé»ò»¥ÁªÍø¿ª·¢¾Ñ飻¾ßÓжþ¸ö¼°ÒÔÉÏÖÐÐÍÏîÄ¿µÄ³É¹¦ÊµÊ©¾Ñ飻
2. ÓÐ׼ȷÀí½âÐèÇ󡢼ܹ¹ÄÜÁ¦£¬ÓнÏÇ¿µÄ³ÌÐòÉè¼ÆÄÜÁ¦, ÊìÏ¤ÃæÏò¶ÔÏó·ÖÎö¡¢Èí¼þ¹¤³Ì¡¢UMLµÈÏà¹Ø¼¼Êõ£»
3. ÊìÁ·ÕÆÎÕ¼ÆËã»ú±à³ÌÒ»°ã˼ÏëºÍ·½·¨£»ÊìϤһÖÁÁ½ÖÖÃæÏò¶ÔÏó±à³ÌÓïÑÔ£»¾«Í¨.NET¡¢ C#¡¢ASP.net¡ ......