ASP.NET動的に静的ページを生成するインスタンスコード
3785 ワード
最近、突然プロジェクトのニュース管理モジュールを静的ページにしたいと思って、ネット上で多くの良い文章を見つけて、ここで記録して、今は静的ページの生成を実現するだけでページ分け機能を実現していません.その主な原理は、データベースのデータを読み取り、静的テンプレートページの内容を置き換えることです.
まずテンプレートページを作成し、templateと一時的に名前を付けます.htm、サンプルコードは以下の通りです.
$content$
次に動的ページを作成し、ここではボタンでイベントをクリックして静的ページを生成します.
フロントページのメインコード(Default.aspx):
まずテンプレートページを作成し、templateと一時的に名前を付けます.htm、サンプルコードは以下の通りです.
$content$
次に動的ページを作成し、ここではボタンでイベントをクリックして静的ページを生成します.
フロントページのメインコード(Default.aspx):
<br><br/> <br><br/> <br><br/> <form id="form1"runat="server"> <br><br/> <div> <br><br/> <textbox id="txtContent"runat="server"height="179px"textmode="MultiLine"width="350px"/><br/> <br><br/> <br/> <br><br/><button id=「btnMake」runat=「server」onclick=「btnMake_Click」text=「 ページの 」/><br><br/> </div> <br><br/> </form> <br><br/> <br><br/> <br><br/> <br></code></pre><br/>バックグラウンドページのメインコード(Default.aspx.cs):<br><br/> <pre><code> <br><br/>protected void btnMake_Click(object sender, EventArgs e) <br><br/> { <br>テンプレートのフィーチャー を <br><br/> string mbPath = Server.MapPath("template.htm"); <br><br/> Encoding code = Encoding.GetEncoding("UTF-8"); <br><br/> StreamReader sr = null; <br><br/> StreamWriter sw = null; <br><br/> string str = null; <br>// み み<br><br/> try <br><br/> { <br><br/> sr = new StreamReader(mbPath, code); <br><br/> str = sr.ReadToEnd(); <br><br/> } <br><br/> catch (Exception ex) <br><br/> { <br><br/> throw ex; <br><br/> } <br><br/> finally <br><br/> { <br><br/> sr.Close(); <br><br/> } <br><br/> に じて に が され、 も で できます<br><br/> string fileName = DateTime.Now.ToString("yyyyMMddHHmm") + ".htm"; <br><br/> str = str.Replace("$content$", txtContent.Text);// content<br><br/>// ファイルの <br><br/> try <br><br/> { <br><br/> sw = new StreamWriter(Server.MapPath("~/") + fileName, false, code); <br><br/> sw.Write(str); <br><br/> sw.Flush(); <br><br/> } <br><br/> catch (Exception ex) <br><br/> { <br><br/> throw ex; <br><br/> } <br><br/> finally <br><br/> { <br><br/> sw.Close(); <br><br/> Response.Write("<a href="+fileName+"mce_href="+fileName+"target="_blank">"+fileName+"</a>が されました!"); <br><br/> } <br><br/> } <br><br/> <br></code></pre><br/>ニュース が い は、サーバのストレージ を させ、 に に ページを し、 ページを する を することを に する があります.<br><div class="clearfix"> <br><span id="art_bot"class="jbTestPos"/> <br></div> <br></div><br></div><br></div>