国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

使用正則Regex來移除網頁的EnableViewState實現思路及代碼

2020-01-18 00:15:37
字體:
來源:轉載
供稿:網友

當你創建好一個網頁時,什么都沒有寫,就可以運行,然后查看源程序(View Source),就會看到下面一段。

此刻,也許你會想起,在網頁有一個屬性EnableViewState,可設為False,但似乎不見效果。

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

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

復制代碼 代碼如下:

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

接下來,重寫Render()方法。
復制代碼 代碼如下:

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);
}

當然,上面只是針對單個網頁,如果你想要多個網頁移除ViewState時,你可以寫在一個BasePage基類,需要實現的網頁,再繼承這個BasePage.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 黔南| 黄平县| 沁阳市| 泰来县| 游戏| 鲜城| 六枝特区| 汉川市| 招远市| 光泽县| 仁化县| 开阳县| 突泉县| 东辽县| 临夏市| 万安县| 山西省| 弥渡县| 曲阜市| 新郑市| 四平市| 乐安县| 浦县| 博白县| 五家渠市| 翁牛特旗| 耒阳市| 东乡族自治县| 鄱阳县| 无锡市| 长丰县| 象州县| 吉安县| 莎车县| 峨边| 遵义市| 蓬安县| 宁武县| 七台河市| 吉首市| 横山县|