ASP.NET 4.0介紹
.NET的定義 微軟對第一版.NET所下的定義:「.NET 就是 Microsoft 為 XML Web Service所提供的平台。」 XML Web服務可讓多個應用程式透過Internet彼此通訊並共用資料,不論其作業系統或程式語言為何,且.NET平台包含一系列功能齊備的產品,這些產品都採用XML及Internet業界標準所建置,可進行全方位的開發、管理、使用並體驗 XML Web服務的操作環境。 Microsoft 目前建構中的.NET 平台分成五大範圍,包括:工具、伺服器、XML Web 服務、用戶端和 .NET 操作環境 。
微軟.NET Framework的組成元件架構圖
.NET Framework 4.0技術堆疊架構圖
ASP.NET 4.0網頁開發技術簡介 ASP.NET是統一的Web 開發平台,為開發人員提供建置企業級Web應用程式所需的服務。 ASP.NET網頁本身為編譯式的架構,可用多種.NET相容語言(包括 Visual Basic、C# 、IronRuby、IronPython)來開發ASP.NET網頁程式。且整個 .NET Framework都可供提給ASP.NET 應用程式存取應用,開發人員可以輕易地獲得這些技術的好處,包括 Managed Common Language Runtime 環境、型別安全、繼承…等等。 VS 2010為ASP.NET提供良好的WYSIWYG HTML網頁表單編輯器,大量的輔助工具,協助ASP.NET網頁的開發,因此ASP.NET網頁開發比起早期更為直覺容易,可快速完成網頁開發工作。
.NET Framework與ASP.NET有何不同? 第一部分是CLR(Common Language Runtime),它是.NET程式執行環境及引擎。 第二部分Class Library類別庫。 ASP.NET網頁技術 ASP.NET是眾多.NET應用程式類型的一種,它的用途是專注於網頁程式設計。 ASP.NET會用使.NET Framework所提供的類別庫,因為.NET Framework類別庫是所有類型應用程式所共用的基礎設施。 .NET還有其他類型的應用程式,如:Console、視窗程式、Mobile行動裝置程式等等,所有類型的應用程式都使用.NET Framework所提供的功能。
VWD 2010建立的ASP.NET專案及開發工具畫面
建立第一個ASP.NET 4.0網站 選擇建立【新網站】選擇【ASP.NET網站】範本於位置選擇【檔案系統】命名為「VS2010IDE」,按下【確定】。
建立專案時,有三種不同選項: 位置:有檔案系統、HTTP及FTP三種,。 語言:可使用的ASP.NET程式開發語言有VB、C#兩種。 瀏覽:基本上這是網站位置的視覺化瀏覽,可供您作進一步的選擇,除此之外還多出了【遠端站台】這項,透過它專案可以存放在另一台遠端電腦主機的IIS之上,但必須要有安裝FrontPage Server Extension。
ASP.NET Web Form簡介 Web Form網頁之兩大組成要素 Web Form 網頁本身可包含兩部份: 視覺化項目(HTML、伺服器控制項和靜態文字)和 網頁的程式設計邏輯: 視覺化項目是建立在.aspx檔案之中。 C#程式碼則儲存於獨立的類別檔案中,這種模式又稱為程式碼後置類別檔案(.aspx.cs 或 .aspx.vb)。
Web Form 檔案結構 .aspx的Web Form視覺化設計畫面
新一代的ASP.NET程式開發方式~Code-Behind ASP.NET Web Form程式開發方式,已經分離成網頁視覺設計與程式邏輯兩部份,透過.aspx與.aspx.cs二者的分離,可讓ASP.NET網頁開發像傳統視窗程式開發般容易,同時也支援完整的視覺化控制項拖曳、版面配置、程式偵錯等諸多功能。 雖然還是可以用傳統ASP程式手法來撰寫ASP.NET程式,將視覺化項目和程式邏輯混雜寫在同一個.aspx檔案中,這種方式也稱為「單一檔案網頁模型(Single-File Page Model)」,但這種寫法已經過時了 ,不建議使用這種不良的方式撰寫ASP.NET程式。
程式碼後置網頁模型(.aspx + .aspx.cs) ASP.NET網頁程式撰寫模型 撰寫ASP.NET程式有兩種網頁程式碼模型(Page Code Model)可選擇 。 網頁撰寫模型 單一檔案網頁模型(.aspx) 程式碼後置網頁模型(.aspx + .aspx.cs) ASP.NET網頁程式撰寫模型
單一檔案網頁模型 所謂的單一檔案網頁模型(Single-File Page Model)就是將所有的HTML宣告、ASP.NET標記、伺服器控制項、靜態文字及C# 全部混合寫在一個.aspx檔案之中 這種方式也稱為「Inline Code」,早期的ASP程式就是採用這種模型
程式一 程式二 <%@ Page Language="C#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> public string getTime()程式一 { return DateTime.Now.ToLongTimeString(); } </script> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>未命名頁面</title> </head> <body> <form id="form1" runat="server">程式二 <div> 現在伺服器時間是:<% =getTime() %> </div> </form> </body> </html> 程式一 程式二