ASP.NET簡介


ASP.NET是一個Web開發平台,它提供了一個程式設計模型,一個全面的軟體基礎設施以及為PC和移動裝置構建健壯的Web應用程式所需的各種服務。

ASP.NET在HTTP協定之上工作,並使用HTTP命令和策略來設定瀏覽器到伺服器的雙向通訊和共同作業。

ASP.NET是Microsoft .Net平台的一部分。ASP.NET應用程式是編譯程式碼,使用.Net框架中存在的可延伸和可重用元件或物件編寫。這些程式碼可以在.Net框架中使用整個類的層次結構。

ASP.NET應用程式程式碼可以用以下任何一種語言編寫:

  • C#
  • Visual Basic.Net
  • Jscript
  • J#

ASP.NET是通過網際網路產生互動的,資料驅動的Web應用程式。它由大量的控制元件(如文字框,按鈕和標籤組成,組態和操作程式碼來建立HTML頁面)組成。

ASP.NET Web表單模型

ASP.NET Web表單將事件驅動的互動模型擴充套件到Web應用程式。瀏覽器向Web伺服器提交Web表單/表單,伺服器返回完整的標記頁面或HTML頁面作為響應。

所有用戶端使用者活動會被轉發到伺服器進行有狀態處理。伺服器處理用戶端操作的輸出並觸發反應。

現在,HTTP是一個無狀態的協定。ASP.NET框架有助於儲存有關應用程式狀態的資訊,其中包括:

  • 頁面狀態
  • 對談狀態

頁面狀態是用戶端的狀態,即web表單中各種輸入欄位的內容。 對談狀態是從使用者存取和使用的各種頁面(即總體對談狀態)獲得的集體資訊。為了更清楚地理解這個概念,這裡來看看一個購物車的例子。

使用者將商品項新增到購物車。商品項是從一個頁面中選擇的,比如商品項的頁面,總收集的商品專案和價格顯示在不同的頁面上,比如購物車頁面。但是只有HTTP是不能跟蹤來自各種頁面的所有資訊的。ASP.NET對談狀態和伺服器端基礎結構跟蹤對談中全域性收集的資訊。

ASP.NET執行時在生成ASP.NET執行時程式碼能同時跨頁面請求在頁面伺服器之間傳遞頁面狀態,並將伺服器端元件的狀態合併到隱藏欄位中。

這樣,伺服器就會知道整個應用程式狀態,並以兩層連線的方式執行。

ASP.NET元件模型

ASP.NET元件模型提供了各種ASP.NET頁面的構建塊。基本上它是一個物件模型,它描述了:

  • 幾乎所有的HTML元素或標籤的伺服器端對應,如<form><input>
  • 伺服器控制元件,它有助於開發複雜的使用者介面。例如,日曆控制元件或Gridview控制元件。

ASP.NET是一種技術,它在包含所有與Web相關的功能的.Net框架上工作。 .Net框架由一個物件導向的層次結構組成。ASP.NET Web應用程式由頁面組成。當使用者請求一個ASP.NET頁面時,IIS將該頁面的處理委託給ASP.NET執行時系統。

ASP.NET執行時將.aspx頁面轉換為一個類的範例,該範例繼承自.Net框架的基礎類別頁面。 因此,每個ASP.NET頁面都是一個物件,即伺服器端控制元件也是物件。

.Net Framework 3.5的元件

讓我們來看一下.Net framework 3.5的各個元件。下表介紹了.NET Framework 3.5的元件及負責執行的工作:

編號 元件 描述
1 公共語言執行時(CLR) 它執行記憶體管理,例外處理,偵錯,安全檢查,執行緒執行,程式碼執行,程式碼安全,驗證和編譯。 由CLR直接管理的程式碼稱為受控代碼。 在編譯受控代碼時,編譯器將原始碼轉換為獨立於CPU的中間語言(IL)程式碼。 即時(JIT)編譯器將IL程式碼編譯為CPU特有的原生代碼。
2 .Net框架類庫 它包含一個巨大的可重用型別庫。類,介面,結構和列舉值,統稱為型別。
3 通用語言規範 它包含.Net支援的語言的規範和語言整合的實現。
4 通用型別系統 它提供了在執行時宣告,使用和管理型別以及跨語言通訊的指導準則。
5 後設資料和程式集 後設資料是描述程式的二進位制資訊,它儲存在可移植的可執行檔案(PE)或儲存器中。程式集是由程式集清單,型別後設資料,IL程式碼和一組資源(如影象檔案)組成的邏輯單元。
6 Windows表單 Windows表單包含應用程式中顯示的任何視窗的圖形表示形式。
7 ASP.NET和ASP.NET AJAX ASP.NET是Web開發模型,AJAX是用於開發和實現AJAX功能的ASP.NET的擴充套件。 ASP.NET AJAX包含的元件允許開發人員更新網站上的資料,而無需重新載入頁面。
8 ADO.NET 這是用於處理資料和資料庫的技術。它提供對資料源(如SQL Server,OLE DB,XML等)的存取。ADO.NET允許連線到資料源來檢索,操作和更新資料。相關教學:/14/124/3665.html
9 Windows工作流(WF) 它有助於在Windows中構建基於工作流的應用程式。它包含活動,工作流執行時,工作流設計器和規則引擎。
10 Windows Presentation Foundation(WPF) 它提供了使用者介面和業務邏輯之間的分離。它有助於開發使用文件,媒體,二維和三維圖形,動畫等視覺震撼介面。
11 Windows通訊基礎(WCF) 這是用於構建和執行連線系統的技術。
12 Windows CardSpace 它提供了在網際網路上存取資源和共用個人資訊的安全性。
13 LINQ 它使用類似於傳統查詢語言SQL的語法將資料查詢功能賦予.Net語言。