ÈÃ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ʵÏÖÊ¡ÊÐÁª¶¯²¢ÇÒ±£´æ×´Ì¬£¬ÊµÏÖÔÀí£º³õ´ÎʹÓÃC#´«Í³µÄDataBind½øÐÐÊý¾Ý°ó¶¨£¬Ñ¡ÔñÊ¡£¬Êкó½øÐÐajax·½Ê½¼ÓÔØÏ¼¶ÁÐ±í£¬²¢½«Ñ¡¶¨Öµ±£´æµ½HiddenÖУ¬µã»÷Ìá½»ºó¸ù¾ÝHiddenµÄÖµ½øÐÐÊ¡£¬Êа󶨣¬ÔÙ½«HiddenµÄÖµ¸³¸øDropDownListµÄSelectedValue£¬´Ó¶øÊµÏÖ״̬µÄ±£´æ¡£
HTML´úÂë
<asp:HiddenField ID="HiddenField ......
ASP.NET ProfileÊôÐÔ
×÷Óãº
´æ´¢ºÍʹÓÃΨһÓëÓû§¶ÔÓ¦µÄÐÅÏ¢
Õ¹ÏÖ¸öÈË»¯°æ±¾µÄWebÓ¦ÓóÌÐò
Óû§µÄΨһÉí·Ý±êʶÔÚÔٴηÃÎÊʱʶ±ðÓû§
ASP.NET ProfileÈçºÎ¹¤×÷
ÄãµÄWebÓ¦ÓóÌÐòÔËÐÐʱ£¬ASP.NET´´½¨Ò»¸ö´ÓProfileBaseÀද̬¼Ì³ÐÏÂÀ´µÄ¶¯Ì¬Éú³É³öÀ´µÄProfileCommonÀà¡£¶¯Ì¬ProfileCommonÀà°üº¬ÁËÄãÔÚWebÓ¦ÓóÌÐòÅäÖÃÎļ ......
×î½üÔÚÕÒÊý¾Ýµ¼³öµ½EXCELµÄ·½·¨£¬·¢ÏÖÖñÁÖbat800ÔÚblogÖз¢²¼µÄ·½·¨£¬ÎªÁ˱ãÓÚÒÔºó²éÕÒתµ½×Ô¼ºblogÏÂ
http://blog.csdn.net/bat800/archive/2007/07/17/1694537.aspx
ÕâÊÇÔÎĵØÖ·
Ò»¡¢asp.netÖе¼³öExeclµÄ·½·¨£º
ÔÚasp.netÖе¼³öExeclÓÐÁ½ÖÖ·½·¨£¬Ò»ÖÖÊǽ«µ¼³öµÄÎļþ´æ·ÅÔÚ·þÎñÆ÷ij¸öÎļþ¼ÐÏÂÃæ£¬È»ºó½«ÎļþµØÖ·Êä³ö ......
ÈÎÖ°×ʸñ:
1. ´óѧ±¾¿ÆÒÔÉÏѧÀú£¬ÈýÄêÒÔÉÏÈí¼þ¿ª·¢¹¤×÷¾Ñé»ò»¥ÁªÍø¿ª·¢¾Ñ飻¾ßÓжþ¸ö¼°ÒÔÉÏÖÐÐÍÏîÄ¿µÄ³É¹¦ÊµÊ©¾Ñ飻
2. ÓÐ׼ȷÀí½âÐèÇ󡢼ܹ¹ÄÜÁ¦£¬ÓнÏÇ¿µÄ³ÌÐòÉè¼ÆÄÜÁ¦, ÊìÏ¤ÃæÏò¶ÔÏó·ÖÎö¡¢Èí¼þ¹¤³Ì¡¢UMLµÈÏà¹Ø¼¼Êõ£»
3. ÊìÁ·ÕÆÎÕ¼ÆËã»ú±à³ÌÒ»°ã˼ÏëºÍ·½·¨£»ÊìϤһÖÁÁ½ÖÖÃæÏò¶ÔÏó±à³ÌÓïÑÔ£»¾«Í¨.NET¡¢ C#¡¢ASP.net¡ ......