標籤:blog http 使用 strong 檔案 io for re
開始的時候沒在意,現在發現還是知道點的好....GOOGLE之~~~
發現解釋的比較清楚的一段話:
aspx和對應的.aspx.cs是一個頁面一個代碼,頁面基本上只負責顯示格式之類的,而所有的伺服器端動作都是在aspx.cs中定義的。也就是說他們其實是一個東西的兩面,aspx中所有伺服器端控制項都可以在對應的aspx.cs中使用,反之亦然,當然也可以定義對應的動作,如果是在IDE中開發的話,不需要你進行任何額外的工作。而在編譯之後,aspx.cs變成了bin目錄下的dll,而aspx檔案沒什麼變化,發布的時候只需要把aspx和dll帶上就可以了,cs檔案作為原代碼不需要發布出去.
ASPX是前台,表示設計頁面,ASPX.CS是後台,是代碼功能實現,分開來設計是為了代碼清晰,功能模組化,
這是Code-Behind結構,即代碼在頁面HTML的後面。
在.aspx檔案中,主要是頁面的HTML;
而在.aspx.cs檔案中,是C#代碼,在.aspx中添加的控制項的事件,它的代碼都在.aspx.cs中。
打一個不恰當的比喻:
.aspx頁面的內容就像我們平時編的靜態網頁(.htm,.html)--當然不是完全一樣。
.aspx.cs中的內容,就非常像我們開發windows平台下的軟體一樣(例如delphi,VC等)--當然也不是完全一樣。
而深入其中的研究貌似我還是有點似懂非懂..但是還是貼上吧:
aspx.cs檔案中存放有一個類(例如WebForm1),在你向伺服器請求該頁面時,ASP.NET就會將aspx.cs中的類作為基類,把當前的頁面(aspx檔案)及基類,編譯產生一個新的類(例如了B),然後由B類產生對象在伺服器端產生HTML檔案發送給用戶端,所以說這裡是繼承關係,大家可以在aspx檔案的開頭看到如下語言也足可以說明這一點:<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="WebApplication1.WebForm1" %>其中的Inherits="WebApplication1.WebForm1"就說明了這種繼承關係.
深入研究詳細參見http://www.cnblogs.com/axzxs2001/archive/2009/01/19/1378383.html