ASP.NET2.0, 網頁設計

[.NET]aspx動態網頁轉成html靜態網頁

梅干 2008/12/20
  為何要將動態網頁轉為靜態網頁,想必不用梅干桑多說,應該都曉得它這樣作的好處吧!透過動態頁網成靜態頁,除了可減少對資料庫的負擔外,也有助於搜尋引擎抓取,同時在網路上的寫法或作法相當的多,經梅干桑測式與修改後,覺得這樣子的方法與寫法最為簡單與好用,因此特地整理了一下原碼與各位一同來分享。

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("寫入成功");
}

※須將網站的目錄權限開啟為寫入。


[範例下載]