2012年10月2日 星期二

{C#} Code Behind、Code File、Code Inline

Code Behind--
建立Code Behind的.cs檔案,通常在建立asp.net的網頁會自動出現,也就是說「預設」就是Code Behind,做到code tag 分離,經過「三點式分離」「關注點分離」的洗禮,就覺的是一個三小的名詞,而code behind大概就是原始時代的分離法,而此頁面需要繼承Basepage ,而這個Basepage 也是相當的複雜,也延申程式碼會非常的多。

Code Inline--
而與他相匹的就是Code Inline(單一檔案)
Code Inline就是把程式碼寫在aspx檔案裡,就像回到了asp時代,但沒人說古時候就不好,這樣的程式簡潔有力。

Code File--
而在查Code Behind時,也查到另一個屬性,就是Code File,這個曾經取代Code Behind的屬性當初與Code Behind的差異就是將程式碼另寫在Code File 的.cs檔案中,並放置Server上呼叫到時才去編譯,而非Code Behind先編譯成dll 去運行。

現行的asp.net 3.5~4.5 以Code Behind為「預設」


Code Behind:將檔編譯成dll檔執行;asp.net 1.1版本
Code File:cs檔上傳到Server編譯;asp.net 2.0的版本

Code Inline:在aspx上
<script type="text/C#" runat="server">
protected  void Page_Load(object  sender,EventArgs e)
{
    Response.Write("abc");

}
</script>

參考資料:
http://blog.miniasp.com/post/2008/12/23/ASPNET-Code-Behind-and-Code-Inline-Tips-in-Visual-Studio.aspx
http://blog.sanc.idv.tw/2011/07/codebehindcodefile.html
http://atic-tw.blogspot.tw/2012/05/code-inline.html