為何要將動態網頁轉為靜態網頁,想必不用梅干桑多說,應該都曉得它這樣作的好處吧!透過動態頁網成靜態頁,除了可減少對資料庫的負擔外,也有助於搜尋引擎抓取,同時在網路上的寫法或作法相當的多,經梅干桑測式與修改後,覺得這樣子的方法與寫法最為簡單與好用,因此特地整理了一下原碼與各位一同來分享。
aspx2html
protected void Page_Load(object sender, EventArgs e)
{
// 前為來源檔案,後為輸出檔案
transHtml("show.aspx", "show.htm");
}
public void transHtml(string path, string outpath)
{
System.Web.UI.Page page = new Page();
StringWriter writer = new StringWriter();
page.Server.Execute(path, writer);
FileStream fs;
fs = File.Create(page.Server.MapPath("") + "\\" + outpath);
byte[] bt = System.Text.Encoding.Default.GetBytes(writer.ToString());
fs.Write(bt, 0, bt.Length);
fs.Close();
Response.Write("寫入成功");
}
※須將網站的目錄權限開啟為寫入。
[範例下載]