鍍金池/ 教程/ C#/ ASP.NET簡介
ASP.NET調(diào)試
ASP.NET Web Services
ASP.NET緩存
ASP.NET多線程
ASP.NET面板控件
ASP.NET數(shù)據(jù)綁定
ASP.NET數(shù)據(jù)源
ASP.NET個(gè)性化
ASP.Net教程
ASP.NET Ajax控件
ASP.NET生命周期
ASP.NET HTML服務(wù)器
ASP.NET簡介
ASP.NET驗(yàn)證器
ASP.NET多視圖
ASP.NET網(wǎng)站配置
ASP.NET錯(cuò)誤管理
ASP.NET自定義控件
ASP.NET LINQ
ASP.NET AdRotator控件
ASP.NET客戶端
ASP.NET文件上傳
ASP.NET服務(wù)器控件
ASP.NET開發(fā)環(huán)境配置
ASP.NET管理狀態(tài)
ASP.NET服務(wù)端
ASP.NET數(shù)據(jù)庫訪問(Access)
ASP.NET基本控件
ASP.NET安全
ASP.NET指令
ASP.NET事件處理
ASP.NET第一個(gè)程序
ASP.NET日歷控件

ASP.NET簡介

ASP.NET是一個(gè)Web開發(fā)平臺(tái),它提供了一個(gè)編程模型,一個(gè)全面的軟件基礎(chǔ)設(shè)施以及為PC和移動(dòng)設(shè)備構(gòu)建健壯的Web應(yīng)用程序所需的各種服務(wù)。

ASP.NET在HTTP協(xié)議之上工作,并使用HTTP命令和策略來設(shè)置瀏覽器到服務(wù)器的雙向通信和協(xié)作。

ASP.NET是Microsoft .Net平臺(tái)的一部分。ASP.NET應(yīng)用程序是編譯代碼,使用.Net框架中存在的可擴(kuò)展和可重用組件或?qū)ο缶帉憽_@些代碼可以在.Net框架中使用整個(gè)類的層次結(jié)構(gòu)。

ASP.NET應(yīng)用程序代碼可以用以下任何一種語言編寫:

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

ASP.NET是通過互聯(lián)網(wǎng)產(chǎn)生交互的,數(shù)據(jù)驅(qū)動(dòng)的Web應(yīng)用程序。它由大量的控件(如文本框,按鈕和標(biāo)簽組成,配置和操作代碼來創(chuàng)建HTML頁面)組成。

ASP.NET Web窗體模型

ASP.NET Web窗體將事件驅(qū)動(dòng)的交互模型擴(kuò)展到Web應(yīng)用程序。瀏覽器向Web服務(wù)器提交Web表單/窗體,服務(wù)器返回完整的標(biāo)記頁面或HTML頁面作為響應(yīng)。

所有客戶端用戶活動(dòng)會(huì)被轉(zhuǎn)發(fā)到服務(wù)器進(jìn)行有狀態(tài)處理。服務(wù)器處理客戶端操作的輸出并觸發(fā)反應(yīng)。

現(xiàn)在,HTTP是一個(gè)無狀態(tài)的協(xié)議。ASP.NET框架有助于存儲(chǔ)有關(guān)應(yīng)用程序狀態(tài)的信息,其中包括:

  • 頁面狀態(tài)
  • 會(huì)話狀態(tài)

頁面狀態(tài)是客戶端的狀態(tài),即web表單中各種輸入字段的內(nèi)容。 會(huì)話狀態(tài)是從用戶訪問和使用的各種頁面(即總體會(huì)話狀態(tài))獲得的集體信息。為了更清楚地理解這個(gè)概念,這里來看看一個(gè)購物車的例子。

用戶將商品項(xiàng)添加到購物車。商品項(xiàng)是從一個(gè)頁面中選擇的,比如商品項(xiàng)的頁面,總收集的商品項(xiàng)目和價(jià)格顯示在不同的頁面上,比如購物車頁面。但是只有HTTP是不能跟蹤來自各種頁面的所有信息的。ASP.NET會(huì)話狀態(tài)和服務(wù)器端基礎(chǔ)結(jié)構(gòu)跟蹤會(huì)話中全局收集的信息。

ASP.NET運(yùn)行時(shí)在生成ASP.NET運(yùn)行時(shí)代碼能同時(shí)跨頁面請求在頁面服務(wù)器之間傳遞頁面狀態(tài),并將服務(wù)器端組件的狀態(tài)合并到隱藏字段中。

這樣,服務(wù)器就會(huì)知道整個(gè)應(yīng)用程序狀態(tài),并以兩層連接的方式運(yùn)行。

ASP.NET組件模型

ASP.NET組件模型提供了各種ASP.NET頁面的構(gòu)建塊?;旧纤且粋€(gè)對象模型,它描述了:

  • 幾乎所有的HTML元素或標(biāo)簽的服務(wù)器端對應(yīng),如<form><input>。
  • 服務(wù)器控件,它有助于開發(fā)復(fù)雜的用戶界面。例如,日歷控件或Gridview控件。

ASP.NET是一種技術(shù),它在包含所有與Web相關(guān)的功能的.Net框架上工作。 .Net框架由一個(gè)面向?qū)ο蟮膶哟谓Y(jié)構(gòu)組成。ASP.NET Web應(yīng)用程序由頁面組成。當(dāng)用戶請求一個(gè)ASP.NET頁面時(shí),IIS將該頁面的處理委托給ASP.NET運(yùn)行時(shí)系統(tǒng)。

ASP.NET運(yùn)行時(shí)將.aspx頁面轉(zhuǎn)換為一個(gè)類的實(shí)例,該實(shí)例繼承自.Net框架的基類頁面。 因此,每個(gè)ASP.NET頁面都是一個(gè)對象,即服務(wù)器端控件也是對象。

.Net Framework 3.5的組件

讓我們來看一下.Net framework 3.5的各個(gè)組件。下表介紹了.NET Framework 3.5的組件及負(fù)責(zé)執(zhí)行的工作:

編號 組件 描述
1 公共語言運(yùn)行時(shí)(CLR) 它執(zhí)行內(nèi)存管理,異常處理,調(diào)試,安全檢查,線程執(zhí)行,代碼執(zhí)行,代碼安全,驗(yàn)證和編譯。 由CLR直接管理的代碼稱為托管代碼。 在編譯托管代碼時(shí),編譯器將源代碼轉(zhuǎn)換為獨(dú)立于CPU的中間語言(IL)代碼。 即時(shí)(JIT)編譯器將IL代碼編譯為CPU特有的本地代碼。
2 .Net框架類庫 它包含一個(gè)巨大的可重用類型庫。類,接口,結(jié)構(gòu)和枚舉值,統(tǒng)稱為類型。
3 通用語言規(guī)范 它包含.Net支持的語言的規(guī)范和語言集成的實(shí)現(xiàn)。
4 通用類型系統(tǒng) 它提供了在運(yùn)行時(shí)聲明,使用和管理類型以及跨語言通信的指導(dǎo)準(zhǔn)則。
5 元數(shù)據(jù)和程序集 元數(shù)據(jù)是描述程序的二進(jìn)制信息,它存儲(chǔ)在可移植的可執(zhí)行文件(PE)或存儲(chǔ)器中。程序集是由程序集清單,類型元數(shù)據(jù),IL代碼和一組資源(如圖像文件)組成的邏輯單元。
6 Windows窗體 Windows窗體包含應(yīng)用程序中顯示的任何窗口的圖形表示形式。
7 ASP.NET和ASP.NET AJAX ASP.NET是Web開發(fā)模型,AJAX是用于開發(fā)和實(shí)現(xiàn)AJAX功能的ASP.NET的擴(kuò)展。 ASP.NET AJAX包含的組件允許開發(fā)人員更新網(wǎng)站上的數(shù)據(jù),而無需重新加載頁面。
8 ADO.NET 這是用于處理數(shù)據(jù)和數(shù)據(jù)庫的技術(shù)。它提供對數(shù)據(jù)源(如SQL Server,OLE DB,XML等)的訪問。ADO.NET允許連接到數(shù)據(jù)源來檢索,操作和更新數(shù)據(jù)。相關(guān)教程:http://www.yiibai.com/ado.net/
9 Windows工作流(WF) 它有助于在Windows中構(gòu)建基于工作流的應(yīng)用程序。它包含活動(dòng),工作流運(yùn)行時(shí),工作流設(shè)計(jì)器和規(guī)則引擎。
10 Windows Presentation Foundation(WPF) 它提供了用戶界面和業(yè)務(wù)邏輯之間的分離。它有助于開發(fā)使用文檔,媒體,二維和三維圖形,動(dòng)畫等視覺震撼界面。
11 Windows通信基礎(chǔ)(WCF) 這是用于構(gòu)建和執(zhí)行連接系統(tǒng)的技術(shù)。
12 Windows CardSpace 它提供了在互聯(lián)網(wǎng)上訪問資源和共享個(gè)人信息的安全性。
13 LINQ 它使用類似于傳統(tǒng)查詢語言SQL的語法將數(shù)據(jù)查詢功能賦予.Net語言。