一(yī). 什麽是ASP.net
ASP.net 是一(yī)種建立在通用語言上的程序構架,能被用于一(yī)台Web服務器來建立強大(dà)的Web應用程序。ASP.NET 不僅僅是 Active Server Page (ASP) 的下(xià)一(yī)個版本;它還提供了一(yī)個統一(yī)的 Web 開(kāi)發模型,其中(zhōng)包括開(kāi)發人員(yuán)生(shēng)成企業級 Web 應用程序所需的各種服務。ASP.NET 的語法在很大(dà)程度上與 ASP 兼容,同時它還提供一(yī)種新的編程模型和結構,可生(shēng)成伸縮性和穩定性更好的應用程序,并提供更好的安全保護。可以通過在現有 ASP 應用程序中(zhōng)逐漸添加 ASP.NET 功能,随時增強 ASP 應用程序的功能。
ASP.NET 是一(yī)個已編譯的、基于 .NET 的環境,可以用任何與 .NET 兼容的語言(包括 Visual Basic .NET、C# 和 JScript .NET.)創作應用程序。另外(wài),任何 ASP.NET 應用程序都可以使用整個 .NET Framework。開(kāi)發人員(yuán)可以方便地獲得這些技術的優點,其中(zhōng)包括托管的公共語言運行庫環境、類型安全、繼承等等。
ASP.NET 可以無縫地與 WYSIWYG HTML 編輯器和其他編程工(gōng)具(包括 Microsoft Visual Studio .NET)一(yī)起工(gōng)作。這不僅使得 Web 開(kāi)發更加方便,而且還能提供這些工(gōng)具必須提供的所有優點,包括開(kāi)發人員(yuán)可以用來将服務器控件拖放(fàng)到 Web 頁的 GUI 和完全集成的調試支持。
二. Asp.Net 的 優異特性: Asp.net相比 其他編程語言,有很多優秀的特性:
- 執行效率的大(dà)幅提高: ASP.net是把基于通用語言的程序在服務器上運行。不像以前的ASP即時解釋程序,而是将程序在服務器端首次運行時進行編譯,這樣的執行效果,當然比一(yī)條一(yī)條的解釋強很多。
- 世界級的工(gōng)具支持: ASP.net構架是可以用Microsoft(R)公司新的産品 Visual Studio.net開(kāi)發環境進行開(kāi)發,WYSIWYG(What You See Is What You Get所見即爲所得)的編輯。這些僅是ASP.net強大(dà)化軟件支持的一(yī)小(xiǎo)部分(fēn)。
- 強大(dà)性和适應性: 因爲ASP.net是基于通用語言的編譯運行的程序,所以它的強大(dà)性和适應性,可以使它運行在Web應用軟件開(kāi)發者的幾乎全部的平台上(筆者到現在爲止隻知(zhī)道它隻能用在Windows 2000 Server上)。通用語言的基本庫,消息機制,數據接口的處理都能無縫的整合到ASP.net的Web應用中(zhōng)。ASP.net同時也是language-independent語言獨立化的,所以,你可以選擇一(yī)種适合你的語言來編寫你的程序,或者把你的程序用很多種語言來寫,現在已經支持的有C#(C++和Java的結合體(tǐ)),VB,Jscript。将來,這樣的多種程序語言協同工(gōng)作的能力保護您現在的基于COM+開(kāi)發的程序,能夠完整的移植向ASP.net。
- 簡單性和易學性: ASP.net是運行一(yī)些很平常的任務如表單的提交客戶端的身份驗證、分(fēn)布系統和網站配置變得非常簡單。例如ASP.net頁面構架允許你建立你自己的用戶分(fēn)界面,使其不同于常見的VB-Like界面。另外(wài),通用語言簡化開(kāi)發使把代碼結合成軟件簡單的就像裝配電腦。
- 高效可管理性: ASP.net使用一(yī)種字符基礎的,分(fēn)級的配置系統,使你服務器環境和應用程序的設置更加簡單。因爲配置信息都保存在簡單文本中(zhōng),新的設置有可能都不需要啓動本地的管理員(yuán)工(gōng)具就可以實現。這種被稱爲"Zero Local Administration"的哲學觀念使Asp.net的基于應用的開(kāi)發更加具體(tǐ),和快捷。一(yī)個ASP.net的應用程序在一(yī)台服務器系統的安裝隻需要簡單的拷貝一(yī)些必須得文件,不需要系統的重新啓動,一(yī)切就是這麽簡單。
- 多處理器環境的可靠性: ASP.net已經被刻意設計成爲一(yī)種可以用于多處理器的開(kāi)發工(gōng)具,它在多處理器的環境下(xià)用特殊的無縫連接技術,将很大(dà)的提高運行速度。即使你現在的ASP.net應用軟件是爲一(yī)個處理器開(kāi)發的,将來多處理器運行時不需要任何改變都能提高他們的效能,但現在的ASP确做不到這一(yī)點。
- 自定義性和可擴展性: ASP.net設計時考慮了讓網站開(kāi)發人員(yuán)可以在自己的代碼中(zhōng)自己定義"plug-in"的模塊。這與原來的包含關系不同,ASP.net可以加入自己定義的如何組件。網站程序的開(kāi)發從來沒有這麽簡單過。
- 安全性: 基于Windows認證技術和每應用程序配置,你可以确性你的原程序時絕對安全的。
三. Asp.Net Web應用程序開(kāi)發說明
當創建 ASP.NET 應用程序時,開(kāi)發人員(yuán)可以使用 Web 窗體(tǐ)或 XML Web services,或以他們認爲合适的任何方式進行組合。每個功能都能得到同一(yī)結構的支持,使您能夠使用身份驗證方案,緩存經常使用的數據,或者對應用程序的配置進行自定義,這裏隻是列出幾種可能性而已。
- 使用 Web 窗體(tǐ)可以生(shēng)成功能強大(dà)的基于窗體(tǐ)的 Web 頁。生(shēng)成這些頁時,可以使用 ASP.NET 服務器控件來創建公共 UI 元素,以及對它們進行編程以用于執行常見的任務。這些控件使您能夠用可重複使用的内置或自定義組件生(shēng)成 Web 窗體(tǐ),從而簡化頁面的代碼。有關更多信息,請參見 Web 窗體(tǐ)頁。有關如何開(kāi)發 ASP.NET 服務器控件的信息,請參見開(kāi)發 ASP.NET 服務器控件。
- XML Web services 提供了遠程訪問服務器功能的途徑。使用 XML Web services,企業可以公開(kāi)數據或業務邏輯的編程接口,而客戶端和服務器應用程序則可以獲取和操作這些編程接口。通過使用諸如 HTTP 和 XML 消息傳遞之類的标準跨越防火(huǒ)牆移動數據,XML Web services 可在客戶端-服務器或服務器-服務器方案下(xià)實現數據的交換。XML Web services 不用依靠特定的組件技術或對象調用約定。因此,用任何語言編寫、使用任何組件模型并在任何操作系統上運行的程序,都可以訪問 XML Web services。有關更多信息,請參見使用 ASP.NET 和 XML Web services 客戶端創建的 XML Web services。
這些模型中(zhōng)的每一(yī)個模型都可以充分(fēn)利用所有 ASP.NET 功能,以及 .NET Framework 和 .NET Framework 公共語言運行庫的強大(dà)功能。這些功能以及使用它們的方法概述如下(xià):
- 如果您具有 ASP 開(kāi)發技能,則新的 ASP.NET 編程模型對您來說将會是非常熟悉的。不過,與 ASP 相比,ASP.NET 對象模型變化顯著,它更爲結構化并且面向對象。但這也意味着 ASP.NET 不是完全向後兼容的;幾乎所有現有的 ASP 頁都必須經過一(yī)定程度的修改後才可以在 ASP.NET 下(xià)運行。此外(wài),對 Visual Basic .NET 的一(yī)些主要更改也意味着,用 Visual Basic Scripting 版本編寫的現有 ASP 頁通常将不會直接移植到 ASP.NET 中(zhōng)。不過,在大(dà)多數情況下(xià),隻需對少數幾行代碼進行必要的修改。有關更多信息,請參見将 ASP 頁遷移到 ASP.NET。
- 從 ASP.NET 應用程序訪問數據庫是向 Web 站點訪問者顯示數據的常用技術。ASP.NET 使得爲此目的而對數據庫的訪問比以往更加方便。它還使您能夠從您的代碼管理數據庫。有關更多信息,請參見通過 ASP.NET 訪問數據。
- ASP.NET 提供一(yī)種簡單的模型,該模型使 Web 開(kāi)發人員(yuán)能夠編寫在應用程序級運行的邏輯。開(kāi)發人員(yuán)可以在 Global.asax 文本文件中(zhōng)或在作爲程序集部署的已編譯類中(zhōng)編寫這種代碼。這種邏輯可以包括應用程序級事件,但開(kāi)發人員(yuán)可以輕松地擴展這種模型,以适應他們的 Web 應用程序的需要。有關更多信息,請參見 ASP.NET 應用程序。
- ASP.NET 提供易用的應用程序和會話(huà)狀态功能,它們對于 ASP 開(kāi)發人員(yuán)來說是熟悉的,且容易與所有其他 .NET Framework API 兼容。有關更多信息,請參見 ASP.NET 狀态管理。
- 對于需要使用像 ISAPI 編程接口(随附于以前的 ASP 版本中(zhōng))那樣功能強大(dà)的 API 的高級開(kāi)發人員(yuán),ASP.NET 提供了 IHttpHandler 和 IHttpModule 接口。實現 IHttpHandler 接口,給您提供了一(yī)種與 IIS Web 服務器的低級别請求和響應服務交互的手段,并提供與 ISAPI 擴展非常類似的功能,但編程模型卻較爲簡單。實現 IHttpModule 接口使您可以包含參與對應用程序發出的每個請求的自定義事件。有關更多信息,請參見 HTTP 運行庫支持。
- ASP.NET 利用 .NET Framework 和公共語言運行庫中(zhōng)的性能增強功能。另外(wài),它還可以提供相對于 ASP 和其他 Web 開(kāi)發平台來說顯著的性能改進。所有 ASP.NET 代碼都是編譯的,
|