asp.net È¥µôviewstate
½â¾ö°ì·¨£ºapp_code/ ´æ·ÅÒ»¸öÀà ÓÃÀ´½Ø»ñHTTP
1.´úÂëÈçÏÂ
using System;
using System.IO;
using System.Web;
using System.Text;
using System.Text.RegularExpressions;
/// <summary>
/// Removes whitespace from the webpage.
/// </summary>
public class ViewstateModule : IHttpModule
{
#region IHttpModule Members
void IHttpModule.Dispose()
{
// Nothing to dispose;
}
void IHttpModule.Init(HttpApplication context)
{
context.BeginRequest += new EventHandler(context_BeginRequest);
}
#endregion
void context_BeginRequest(object sender, EventArgs e)
{
HttpApplication app = sender as HttpApplication;
//if (app.Request.Url.OriginalString.Contains(".aspx"))
//{
// app.Response.Filter = new ViewstateFilter(app.Response.Filter);
//}
//reg/Ŀ¼ÏµIJ»½øÐÐÓÅ»¯ ÒòΪ·¢ÏÖrender ºó£¬ÑéÖ¤Âë²»ÄÜÏÔʾ
if (!app.Request.Url.OriginalString.Contains("/reg/"))
{
if (app.Request.Url.OriginalString.Contains(".aspx"))
{
app.Response.Filter = new ViewstateFilter(app.Response.Filter);
}
}
//¾²Ì¬»¯ºóÖØÒ²Òª´¦Àí
if (app.Request.Url.OriginalString.Contains(".html"))
{
app.Response.Filter = new ViewstateFilter(app.Response.Filter);
}
}
#region Stream filter
private class ViewstateFilter : Stream
{
public ViewstateFilter(Stream sink)
{
_sink = sink;
}
private Stream _sink;
#region Properites
public override bool CanRead
{
get { return true; }
}
public override bool CanSeek
{
get { return true; }
}
public override bool CanWrite
{
get { return true; }
}
public override void Flush()
{
_sink.Flush();
}
Ïà¹ØÎĵµ£º
//TransmitFileʵÏÖÏÂÔØ
protected void Button1_Click(object sender, EventArgs e)
{
/*
΢ÈíΪResponse¶ÔÏóÌṩÁËÒ»¸öÐµķ½·¨TransmitFileÀ´½â¾öʹÓÃRespo ......
×î½üҪдһ¸öÔÚÍøÒ³ÖвéÕҹؼü×Ö¼°Á´½ÓµÄ³ÌÐò£¬ÔÚÊä³öµ½TextBoxµÄʱºò·¢ÏÖ¾³£³öÏÖÂÒÂ룬ÕûÀíÁËһϸù¾Ý²»Í¬µÄ±àÂëÑ¡È¡ÍøÒ³Ô´Îļþ£¬Ä¿Ç°¿ÉÒÔ½â¾ö¼¸ÖÖ³£±àÂ뷽ʽµÄÍøÒ³£¬¸ÐÐËȤµÄ¿ÉÒÔÊÔÏ¡£
±¾À´ÏëÓÓ£½£½”ÅжϱàÂ룬¸Ð¾õ±È½ÏÂé·³£¬ËùÒÔ¸ÄÓñȽÏÄ£ºýµÄ·½·¨£¬ContainsÓÃÔÚÕâÀïͦ·½±ãµÄ¡£
Contains˵Ã÷£º¾ÍÊÇ·µ» ......
ΪÁËÄÜÈÃÀ´×Ô²»Í¬ÎÄ»¯Ï°¹ß»òʹÓò»Í¬ÓïÑÔ×÷ΪĸÓïµÄ·Ã¿ÍÄܹ»ÔĶÁÎÒÃǵÄÍøÕ¾£¬Ôò±ØÐëΪÕâЩ¶ÁÕßÌṩÓÃËûÃÇ×Ô¼ºµÄÓïÑÔ²é¿´ÍøÒ³µÄ·½·¨¡£Ò»ÖÖ·½·¨ÊÇ·Ö±ðÓø÷ÓïÑÔÖØÐ´´½¨Ò³Ã棬µ«ÕâÖÖ·½·¨¿ÉÄÜÐèÒª´óÁ¿¹¤×÷Á¿¡¢ÈÝÒ׳ö´í²¢ÇÒÔÚ¸ü¸ÄÔʼҳʱºÜÄÑά»¤¡£ÀûÓà ASP.NET£¬¿ÉÒÔʹ´´½¨µÄÒ³Ãæ»ùÓÚä¯ÀÀÆ÷µÄÊ×Ñ¡ÓïÑÔÉèÖûòÓû§ÏÔʽѡÔñµÄÓïÑÔ ......
ÍøÉÏÕÒµ½µÄÒ»¸ö°ì·¨£¬Ò²¿ÉÒÔ½â¾ö Óûسµ¼ü´úÌæÌá½»°´Å¥Ê±£¬Óû§³£°´»Ø³µ£¨·Ç³£¿ìËÙµÄµã»Ø³µ£©µ¼ÖÂÖØ¸´Ìá½»µÄÇé¿ö£º
public class SubmitOncePage : System.Web.UI.Page
{
private string _strSessionKey;
&n ......