可以使用 Web 窗體頁來創建可程式的 Web 頁,這些 Web 頁用作 Web 應用程式的用戶界面。Web 窗體頁在任何瀏覽器或客戶端設備中向用戶提供信息,並使用伺服器端代碼來實現應用程式邏輯。Web 窗體頁輸出幾乎可以包含任何支持 HTTP 的語言(包括標準通用標記語言的子集HTML與XML、WML 和ECMAScript (JScript, JavaScript))。
基本介紹
- 中文名:Web 窗體
- 外文名:Web Forms
簡介
特點
- 兼容所有瀏覽器或移動設備。Web 窗體頁自動為樣式、布局等功能呈現正確的、符合瀏覽器的 HTML。此外,您還可以選擇將 Web 窗體頁設計為在特定瀏覽器(如 Microsoft Internet Explorer 5)上運行並利用多樣式瀏覽器客戶端的功能。
- 兼容 .NET 公共語言運行庫所支持的任何語言,其中包括 Microsoft Visual Basic、Microsoft Visual C# 和 Microsoft JScript .NET。
- 基於 Microsoft .NET Framework 生成。它提供了該框架的所有優點,包括託管環境、類型安全性和繼承。
- 在 Visual Studio 中通過強大的快速應用程式開發 (RAD) 工具受到支持,該工具用於對窗體進行設計和編程。
- 可使用為 Web 開發提供 RAD 功能的控制項進行擴展,從而使您能夠快速地創建多樣式的用戶界面。
- 具有靈活性,因為您可以向它們添加用戶創建的控制項和第三方控制項。
組件
檔案結構
Web 窗體頁幫助您完成哪些任務
- 實現多樣式的 Web 用戶界面。對於布局複雜且包含大量動態內容和功能齊全的用戶互動對象的用戶界面而言,使用基本的 HTML 功能來進行設計和實現將會既困難又費事。其中尤為困難的是為可能在多個不同的瀏覽器和客戶端設備平台上運行的應用程式創建多樣式的用戶界面。
- 客戶端與伺服器的分離。在 Web 應用程式中,客戶端(瀏覽器)和伺服器是不同的程式,它們通常在不同的計算機上運行(甚至在不同的作業系統上運行)。因此,共同組成應用程式的這兩個部分僅共享很少的信息;它們可以進行通信,但通常只交換很小塊的簡單信息。
- 無狀態執行。當 Web 伺服器接收到對某頁的請求時,它會查找該頁,對其進行處理,將其傳送到瀏覽器,然後丟棄所有頁信息。如果用戶再次請求同一頁,伺服器則會重複整個過程:從頭開始對該頁進行重新處理。換言之,伺服器不會記憶它已處理的頁。因此,如果應用程式需要維護有關某頁的信息,這就成為一個必須在應用程式代碼中解決的問題。
- 未知的客戶端功能。在許多情況下,Web 應用程式可由多個使用不同瀏覽器的用戶進行訪問。瀏覽器具有不同的功能,因此很難創建將在所有瀏覽器上都同樣正常運行的應用程式。
- 數據訪問方面的複雜性。對位於傳統 Web 應用程式的數據源進行讀取和寫入可能比較複雜,並且會消耗大量資源。
- 可縮放性方面的複雜性。在許多情況下,由於應用程式的不同組件之間缺乏兼容性,用現有方法設計的 Web 應用程式未能實現可縮放性的目標。對於發展周期較短的應用程式,這往往是唯一會導致失敗的地方。
- 直觀、一致的對象模型。ASP.NET 頁框架提供了一種對象模型,它使您能夠將窗體當作一個整體,而不是分離的客戶端和伺服器模組。在此模型中,您可以通過比在傳統 Web 應用程式中更為直觀的方式來對窗體進行編程,其中包括能夠設定窗體元素的屬性和回響事件。此外,ASP.NET 伺服器控制項是基於 HTML 頁的物理內容以及瀏覽器與伺服器之間的直接互動的一種抽象模型。通常,您可以按照在客戶端應用程式中使用控制項的方式使用伺服器控制項,而不必考慮如何創建 HTML 來顯示和處理控制項及其內容。
- 事件驅動的編程模型。Web 窗體頁給 Web 應用程式帶來了一種您熟悉的事件處理程式編寫模型,用於為客戶端或伺服器上發生的事件編寫事件處理程式。ASP.NET 頁框架對此模型進行了抽象,使捕獲客戶端上的事件、將其傳輸到伺服器並調用適當方法等操作的基礎機制都是自動的,並對於實施者都是不可見的。這樣就得到了一個清晰的、易於編寫的、支持事件驅動開發的代碼結構。
- 直觀的狀態管理。ASP.NET 頁框架自動處理窗體及其控制項的狀態維護任務,它使您能夠以顯式方式維護應用程式特定信息的狀態。這種狀態管理無需使用大量伺服器資源即可實現,而且可以通過向瀏覽器傳送 Cookie 來實現,也可以不通過向瀏覽器傳送 Cookie 來實現。
- 獨立於瀏覽器的應用程式。ASP.NET 頁框架支持在伺服器上創建所有應用程式邏輯,使您無需為瀏覽器中的差異而進行顯式編碼。但是,它仍允許您自動利用瀏覽器特定的功能,方法是通過編寫客戶端代碼來提供增強的性能和更豐富的客戶端體驗。
- .NET Framework 公共語言運行庫支持。ASP.NET 頁框架是 ASP.NET 的一項技術。ASP.NET 是基於 .NET Framework 生成的,因此整個框架都可用於任何 ASP.NET 應用程式。您可以使用任何與運行庫兼容的語言(包括 Microsoft Visual Basic、Visual C# 和 JScript .NET)來創作應用程式。此外,數據訪問通過 .NET Framework 提供的數據訪問基礎結構(包括 ADO.NET)得到了簡化。
- .NET Framework 可縮放伺服器性能。ASP.NET 頁框架使您能夠將 Web 應用程式從一台只裝有一個處理器的計算機有效地縮放到多計算機“網路場”(Web farm),而無需對應用程式的邏輯進行複雜的更改。