asp.net 输出 页面内容 在服务器上

时间:2023-03-08 21:06:53
.定义页面内容

按 Ctrl+C 复制代码
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> <asp:Panel ID="resultDiv" runat="server">
<h2>
歡迎使用 ASP.NET!
</h2>
<p>
若要進一步了解 ASP.NET,請造訪 <a href="http://www.asp.net" title="ASP.NET 網站">www.asp.net</a>。 <asp:TextBox ID="TextBox1" runat="server" Text="gsw"></asp:TextBox>
</p>
<p>
您也可以尋找 <a href="http://go.microsoft.com/fwlink/?LinkID=152368"
title="MSDN ASP.NET 文件">MSDN 上有關 ASP.NET 的文件</a>。
</p>
</asp:Panel>
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
</asp:Content>
按 Ctrl+C 复制代码2.重写 Render 方法
代码如下: 按 Ctrl+C 复制代码
protected override void Render(HtmlTextWriter writer)
{ StringWriter sw;
HtmlTextWriter htmltw;
sw = new StringWriter();
htmltw = new HtmlTextWriter(sw);
base.Render(htmltw);
//htmltw = writer;
StringBuilder temp = sw.GetStringBuilder();
//base.Render(writer);
string PageResult = temp.ToString(); writer.Write(PageResult);
System.IO.StreamWriter strWrite = new StreamWriter(Server.MapPath("a.html"));
strWrite.Write(PageResult);
strWrite.Close(); }
按 Ctrl+C 复制代码上面的代码,是整个页面输出到html。 .可以指定服务器控件的内容,输出成html。 3.1 需要重写方法VerifyRenderingInServerForm 代码如下: public override void VerifyRenderingInServerForm(Control control)
{
return;
}3.2 重写 Render 方法 protected override void Render(HtmlTextWriter writer)
{ base.Render(writer);
System.Text.StringBuilder strBuilder = new System.Text.StringBuilder();
System.IO.StringWriter oStringWriter = new
System.IO.StringWriter(strBuilder);
System.Web.UI.HtmlTextWriter oHtmlTextWriter = new
System.Web.UI.HtmlTextWriter(oStringWriter);
strBuilder.Append("<html><head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" /><title>首頁</title></head><body>");
resultDiv.RenderControl(oHtmlTextWriter);
System.IO.StreamWriter strHtmlFile = System.IO.File.CreateText(Server.MapPath( "a.html"));
strBuilder.Append("</body></html>");
strHtmlFile.WriteLine(strBuilder.ToString());
strHtmlFile.Close(); }

相关文章