摘要:ASP 是一項(xiàng)微軟公司的技術(shù),是一種使嵌入網(wǎng)頁(yè)中的腳本可由因特網(wǎng)服務(wù)器執(zhí)行的服務(wù)器端腳本技術(shù)。 指 Active Server Pages(動(dòng)態(tài)服務(wù)器頁(yè)面),運(yùn)行于 IIS 之中的程序。ASP技術(shù)已經(jīng)成為微軟推展Windows NT 4.0平臺(tái)的關(guān)鍵技術(shù)之一,數(shù)以萬(wàn)計(jì)的ASP網(wǎng)站也是這個(gè)時(shí)候開(kāi)始如雨后春筍般的出現(xiàn)在網(wǎng)絡(luò)上。由于它的簡(jiǎn)單以及高度客制化的能力,也是它能迅速竄起的原因之一。ASP.NET是由微軟在.NET Framework框架中所提供,開(kāi)發(fā)Web應(yīng)用程序的類(lèi)庫(kù),封裝在System.Web.dll文件中,顯露出System.Web命名空間,并提供ASP.NET網(wǎng)頁(yè)處理、擴(kuò)充以及HTTP通道的應(yīng)用程序與通信處理等工作,以及Web Service的基礎(chǔ)架構(gòu)。ASP.NET是ASP技術(shù)的后繼者,但它的發(fā)展性要比ASP技術(shù)要強(qiáng)大許多。本文從技術(shù)和應(yīng)用角度分析了ASP.NET的原理和發(fā)展前景,為學(xué)生的學(xué)習(xí)和就業(yè)提供良好的理論與實(shí)踐指導(dǎo)。
關(guān)鍵詞:ASP.NET架構(gòu)部件模式
[中圖分類(lèi)號(hào)]:TP3[文獻(xiàn)標(biāo)識(shí)碼]:A
[文章編號(hào)]:1002-2139(2011)-18-0237-01
一、ASP.NET 運(yùn)行的架構(gòu)分為幾個(gè)階段
1、在 IIS 與 Web 服務(wù)器中的消息流動(dòng)階段。
2、在 ASP.NET 網(wǎng)頁(yè)中的消息分派。
3、在 ASP.NET 網(wǎng)頁(yè)中的消息處理。
二、ASP.NET運(yùn)行架構(gòu)
當(dāng)裝載(hosting) ASP.NET 的 Web 服務(wù)器接收到 HTTP 請(qǐng)求時(shí),HTTP 聆聽(tīng)程序 (HTTP Listener) 會(huì)將請(qǐng)求轉(zhuǎn)交給 URL 指定的網(wǎng)站應(yīng)用程序的工作流程 (Worker Process),ASP.NET 的工作流程處理器(aspnet_isapi.dll,若是 IIS 5.0 時(shí)則是 aspnet_wp.exe)會(huì)解析 URL,并啟動(dòng)位于 System.Web.Hosting 命名空間中的 ISAPIRuntime(視版本)對(duì)象,接收 HTTP 請(qǐng)求,并調(diào)用 HttpRuntime,運(yùn)行 HttpRuntime.ProcessRequest(),在 ProcessRequest() 中使用 HttpApplicationFactory 創(chuàng)建新的 HttpApplication(或是指定的 IHttpHandler 處理器),再分派給 Page 中的 ProcessRequest() 或是 IHttpHandler 的 ProcessRequest() 方法,運(yùn)行之后,再傳回到 ISAPIRuntime,以及 aspnet_isapi.dll,最后交由 HTTP Listener 回傳給客戶(hù)端,因?yàn)檫\(yùn)行程序有如管線(xiàn)般順暢的運(yùn)行,因此稱(chēng)為 HTTP Pipeline Mode。
三、基礎(chǔ)部件
ASP.NET 最基礎(chǔ)的底層為網(wǎng)頁(yè) (Page),網(wǎng)頁(yè)由 System.Web.UI.Page 類(lèi)來(lái)提供基礎(chǔ)支持,包含了頁(yè)面的事件以及對(duì)象繪制的引發(fā)點(diǎn)(Page 類(lèi)本身是一個(gè) HTTP Handler 的實(shí)現(xiàn)品)。ASP.NET 網(wǎng)頁(yè)在微軟的官方名稱(chēng)中,稱(chēng)為 Web Form,除了是要和Windows Forms作分別以外,同時(shí)也明白的刻畫(huà)出了它的主要功能:“讓開(kāi)發(fā)人員能夠像開(kāi)發(fā) Windows Forms 一樣的方法來(lái)發(fā)展 Web 網(wǎng)頁(yè)”。因此 ASP.NET Page 所要提供的功能就需要類(lèi)似 Windows Forms 的窗體,每個(gè) Web Form 都要有一個(gè)區(qū)塊,所有的 ASP.NET 服務(wù)器控件都要放在這個(gè)區(qū)域中,這樣才可以讓 ViewState 等服務(wù)器控制能夠順暢的運(yùn)作。使用代碼后置模式的設(shè)置時(shí),可以讓 ASP.NET 運(yùn)行引擎在加載網(wǎng)頁(yè)時(shí),由代碼后置參數(shù)取得對(duì)應(yīng)的類(lèi)信息,藉以使用 Reflection 的方式來(lái)運(yùn)行后置的代碼。
四、發(fā)展前景
最近IT行業(yè)在經(jīng)濟(jì)危機(jī)的大潮中,不退反進(jìn),引起很多人的關(guān)注,畢竟這種經(jīng)濟(jì)增長(zhǎng)方式還是很少見(jiàn)的,越來(lái)越多的人開(kāi)始關(guān)注和使用 Microsoft.NET。NET主要包括Visual Studio .NET開(kāi)發(fā)工具,.NET平臺(tái)和.NET服務(wù)器。可以說(shuō).NET將是微軟未來(lái)十年的發(fā)展戰(zhàn)略,其技術(shù)核心是Web Services。
比爾·蓋茨說(shuō)過(guò),.NET是一項(xiàng)以公司的命運(yùn)為賭注的賭博,微軟公司的全部戰(zhàn)略也是圍繞著 .NET平臺(tái)而制定的。現(xiàn)在包括IBM、康柏、三星、Commerce One以及其他互聯(lián)網(wǎng)服務(wù)供應(yīng)商,已開(kāi)始與微軟密切合作,共同推廣 .NET技術(shù),搭建第三代互聯(lián)網(wǎng)平臺(tái)。
下面是正題.net軟件開(kāi)發(fā)前景,從目前的發(fā)展趨勢(shì)來(lái)看,以前的Visual Basic, ASP和COM技術(shù)將很快被.NET所完全取代。NET將應(yīng)用于中小企業(yè)的Web應(yīng)用, 企業(yè)Portals, e-business 以及結(jié)合微軟企業(yè)服務(wù)器的大型企業(yè)級(jí)應(yīng)用。因此可以說(shuō),.NET就業(yè)主要是Windows和UNIX的競(jìng)爭(zhēng)、NET和JAVA的競(jìng)爭(zhēng)。有數(shù)據(jù)顯示企業(yè)對(duì)UNIX系統(tǒng)的需求正不斷降,成本、維護(hù)費(fèi)用和使用不方便是其主要原因。在美國(guó)52% 的安全網(wǎng)站都是基于Windows來(lái)建設(shè)的,而SUN的Java使用只占11%,大部分財(cái)富五百?gòu)?qiáng)的企業(yè),差不多40%都使用Windows2000建設(shè)網(wǎng)站。
近幾年大家之所以喜歡Java是因?yàn)樗且粋€(gè)真正面向?qū)ο蟮恼Z(yǔ)言,更重要的是大家認(rèn)為JAVA是使應(yīng)用相互溝通并實(shí)現(xiàn)在因特網(wǎng)上互連的標(biāo)準(zhǔn)方式。但是現(xiàn)在一些技術(shù)領(lǐng)先的公司都已經(jīng)認(rèn)識(shí)到,XML模式包括Web Service將是網(wǎng)絡(luò)互連的標(biāo)準(zhǔn)。微軟的.NET以及其他企業(yè)服務(wù)器都從根本上支持XML和Web Service。
從項(xiàng)目開(kāi)發(fā)成本和運(yùn)行成本上看,用微軟.NET技術(shù)要實(shí)惠得多。那么說(shuō).net軟件開(kāi)發(fā)前景好沒(méi)有錯(cuò),掌握了asp.net技術(shù),對(duì)于學(xué)生畢業(yè)以后就業(yè)起點(diǎn)和未來(lái)發(fā)展都是多了一份選擇的機(jī)會(huì)!
參考文獻(xiàn):
1、基于版本控制的《WEB應(yīng)用開(kāi)發(fā)—ASP.NET2.0》案例教學(xué)作者:陳世強(qiáng) 機(jī)構(gòu):福建師范大學(xué)盈峰信息技術(shù)學(xué)院軟件技術(shù)教研室
2、《實(shí)驗(yàn)室研究與探索》 作者:施冰 張?chǎng)?戴亞平機(jī)構(gòu):云南大理學(xué)院數(shù)學(xué)與計(jì)算機(jī)學(xué)院 北京理工大學(xué)自動(dòng)控制系
3、《ASP.NET 3.5從入門(mén)到精通(C#2008版)》 作者:(美)麥克唐納 著,施宏斌,馬煜 譯出版社:清華大學(xué)出版社出版時(shí)間:2010年01月
4、《ASP.NET 本質(zhì)論》 作者:郝冠軍 著 出 版 社:機(jī)械工業(yè)出版社出版時(shí)間:2011年03月
5、《ASP.NET2.0入門(mén)經(jīng)典 》 作者:(美)米切爾 著,陳武 譯 出版社:人民郵電出版社 出版時(shí)間:2007年05月