在ASP.NET 2.0中,有时候需要对ASP.NET生成的HTML代码进行处理,或者是保存成静态文件。ASP.NET 提供了直接将请求保存成文件的方法:HttpRequest.SaveAs方法。下面这个方法就是在ASP.NET 2.0中得到ASP.NET生成的HTML代码,同时,生成一个静态文件的方法。
1
<%@ Page Language="C#" AutoEventWireup="true" %>
2![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6
<script runat="server">
7
// 计算数据,完全可以从数据看取得
8
ICollection CreateDataSource( )
9
{
10
System.Data.DataTable dt = new System.Data.DataTable();
11
System.Data.DataRow dr;
12
dt.Columns.Add(new System.Data.DataColumn("学生班级", typeof(System.String)));
13
dt.Columns.Add(new System.Data.DataColumn("学生姓名", typeof(System.String)));
14
dt.Columns.Add(new System.Data.DataColumn("语文", typeof(System.Decimal)));
15
dt.Columns.Add(new System.Data.DataColumn("数学", typeof(System.Decimal)));
16
dt.Columns.Add(new System.Data.DataColumn("英语", typeof(System.Decimal)));
17
dt.Columns.Add(new System.Data.DataColumn("计算机", typeof(System.Decimal)));
18![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
19
for (int i = 0 ; i < 50 ; i++)
20
{
21
System.Random rd = new System.Random(Environment.TickCount * i); ;
22
dr = dt.NewRow();
23
dr[0] = "班级" + i.ToString();
24
dr[1] = "【孟子E章】" + i.ToString();
25
dr[2] = System.Math.Round(rd.NextDouble() * 100, 2);
26
dr[3] = System.Math.Round(rd.NextDouble() * 100, 2);
27
dr[4] = System.Math.Round(rd.NextDouble() * 100, 2);
28
dr[5] = System.Math.Round(rd.NextDouble() * 100, 2);
29
dt.Rows.Add(dr);
30
}
31
System.Data.DataView dv = new System.Data.DataView(dt);
32
return dv;
33
}
34![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
35
protected void Page_Load( object sender, EventArgs e )
36
{
37
if (!IsPostBack)
38
{
39
GridView1.DataSource = CreateDataSource();
40
GridView1.DataBind();
41
}
42
}
43![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
44
protected override void Render( HtmlTextWriter writer )
45
{
46
System.IO.StringWriter html = new System.IO.StringWriter();
47
System.Web.UI.HtmlTextWriter tw = new System.Web.UI.HtmlTextWriter(html);
48
base.Render(tw);
49
System.IO.StreamWriter sw;
50
sw = new System.IO.StreamWriter(Server.MapPath("a.htm"), false, System.Text.Encoding.Default);
51
sw.Write(html.ToString());
52
sw.Close();
53
tw.Close();
54
Response.Write(html.ToString());
55
}
56
</script>
57![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
58
<html xmlns="http://www.w3.org/1999/xhtml">
59
<head>
60
<title>得到ASP.NET生成的HTML</title>
61
</head>
62
<body>
63
<form id="Form1" runat="server">
64
<asp:GridView ID="GridView1" runat="server" Font-Size="12px" BackColor="#FFFFFF"
65
GridLines="Both" CellPadding="4" Width="560">
66
<HeaderStyle BackColor="#EDEDED" Height="26px" />
67
</asp:GridView>
68
</form>
69
</body>
70
</html>
71![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
9
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
10
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
11
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
12
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
13
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
14
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
15
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
16
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
17
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
18
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
19
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
20
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
21
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
22
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
23
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
24
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
25
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
26
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
27
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
28
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
29
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
30
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
31
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
32
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
33
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
34
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
35
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
36
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
37
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
38
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
39
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
40
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
41
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
42
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
43
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
44
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
45
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
46
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
47
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
48
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
49
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
50
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
51
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
52
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
53
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
54
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
55
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
56
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
57
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
58
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
59
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
60
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
61
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
62
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
63
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
64
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
65
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
66
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
67
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
68
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
69
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
70
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
71
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)