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();
}
Ïà¹ØÎĵµ£º
1 ÈçºÎÔÚÌá½»ºó·ÀÖ¹µ¯³öд°¿Ú
2 ÔÚģ̬´°¿ÚÖÐÔٴε¯³öģ̬´°¿Ú
3 ģ̬´°¿Ú·µ»ØÖµ
4 ˢи¸´°¿Ú
5 ¸¸´°¿ÚÈçºÎÌí¼Óˢнű¾
Ö÷´°¿Úµ¯³öÒ»¸öģ̬´°¿Ú,
var firstDiag = window.showModalDialog(url,window,"center:yes;dialogWidth:300px;dialogHeight:400px");
×¢:ÔÚurlÎļþµÄhead¼ÓÈë <base target='_self'> ¾ ......
Global.asaxÎļþ£¬ÓÐʱºò½Ð×öÓ¦ÓóÌÐòÎļþ£¬ÌṩÁËÒ»ÖÖÔÚÒ»¸öÖÐÐÄλÖÃÏìÓ¦Ó¦ÓóÌÐò¼¶»òÄ£¿é¼¶Ê¼þµÄ·½·¨¡£Äã¿ÉÒÔʹÓÃÕâ¸öÎļþʵÏÖÓ¦ÓóÌÐò°²È«ÐÔÒÔ¼°ÆäËüһЩÈÎÎñ¡£ÏÂÃæÈÃÎÒÃÇÏêϸ¿´Ò»ÏÂÈçºÎÔÚÓ¦Óù¤×÷ÖÐʹÓÃÕâ¸öÎļþ¡£
¸ÅÊö
Global.asaxλÓÚÓ¦ÓóÌÐò¸ùĿ¼Ï¡£ËäÈ»VisualStudio.NET»á×Ô¶¯²åÈëÕâ¸öÎ ......
//¸ù¾ÝÖ÷¼üÀ´É¾³ý±íÖеÄÊý¾Ý¡£
//ɾ³ý
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
OleDbConnection sqlConnection = new OleDbConnection(GetConnection());
& ......
¸üз½·¨Ò»£¬Ö±½ÓÔÚGridViewÖÐÀ´¸üÐÂÊý¾Ý.
¸üз½·¨¶þ£¬´ò¿ªÒ»¸öеÄÒ³ÃæÀ´¸üÐÂÊý¾Ý.
//¸üÐÂ
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
&nbs ......
ÓкܶàÀíÓÉÈ¥½âÊÍÀí½âASP.NETÒ³ÃæÉúÃüÖÜÆÚÊǷdz£ÖØÒªµÄ£¬Ö÷ÒªÊÇҪȥÀí½âʲôµØ·½·ÅÖÃÊ²Ã´ÌØ¶¨µÄ·½·¨£¬Ê²Ã´Ê±ºòÎÒÃÇÓ¦¸ÃÉèÖÃʲôÏà¹ØµÄÊôÐÔ¡£Èç¹ûÈ¥¿ª·¢×Ô¶¨ÒåµÄ·þÎñÆ÷¿Ø¼þ£¬Àí½âÉúÃüÖÜÆÚ¶Ô¾ÀÕý¿Ø¼þ³õʼ»¯Ê±ºòµÄ´íÎó£¬ÒÔ¼°Ê¹ÓÃview-stateºÍºǫ́´úÂëÉèÖÃÊôÐÔÊǷdz£ÓÐÓõġ££¨¿Ø¼þʼþÖ»ÓëASP.NETÒ³ÃæÏà¹Ø£©
&nb ......