欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用正則Regex來(lái)移除網(wǎng)頁(yè)的EnableViewState實(shí)現(xiàn)思路及代碼

 更新時(shí)間:2013年01月27日 13:26:14   作者:  
創(chuàng)建好網(wǎng)頁(yè)時(shí),什么都沒(méi)有寫(xiě),但運(yùn)行時(shí)會(huì)發(fā)現(xiàn)源程序(View Source),下面一段,此刻,也許你會(huì)想起,在網(wǎng)頁(yè)有一個(gè)屬性EnableViewState,在某些時(shí)候我們并不需要它,接下來(lái)將介紹如何移除它,感興趣的朋友可以了解下啊

當(dāng)你創(chuàng)建好一個(gè)網(wǎng)頁(yè)時(shí),什么都沒(méi)有寫(xiě),就可以運(yùn)行,然后查看源程序(View Source),就會(huì)看到下面一段。

此刻,也許你會(huì)想起,在網(wǎng)頁(yè)有一個(gè)屬性EnableViewState,可設(shè)為False,但似乎不見(jiàn)效果。

其實(shí)網(wǎng)頁(yè)有ViewState并不是壞事,但有時(shí)我們不需要它。怎樣辦?
首先回過(guò)頭來(lái),看第一幅圖片,第12行代碼,即高亮部分,是我們想移掉的部分。我們可以使用正則,然后網(wǎng)頁(yè)重新Render,就可把它拿掉。

在.aspx.cs 或.aspx.vb引用namespace:

復(fù)制代碼 代碼如下:

using System;
using System.IO;
using System.Text;
using System.Text.RegularExpressions;
using System.Web;
using System.Web.UI;

接下來(lái),重寫(xiě)Render()方法。
復(fù)制代碼 代碼如下:

protected override void Render(HtmlTextWriter writer)
{
StringBuilder sb = new StringBuilder();
StringWriter sw = new StringWriter(sb);
HtmlTextWriter hWriter = new HtmlTextWriter(sw);
base.Render(hWriter);
string html = sb.ToString();
html = Regex.Replace(html, "<input[^>]*id=\"(__VIEWSTATE)\"[^>]*>", string.Empty, RegexOptions.IgnoreCase);
writer.Write(html);
}

當(dāng)然,上面只是針對(duì)單個(gè)網(wǎng)頁(yè),如果你想要多個(gè)網(wǎng)頁(yè)移除ViewState時(shí),你可以寫(xiě)在一個(gè)BasePage基類(lèi),需要實(shí)現(xiàn)的網(wǎng)頁(yè),再繼承這個(gè)BasePage.

相關(guān)文章

最新評(píng)論