共用方式為


ASP.NET Mobile Web 開發概觀

更新:2007 年 11 月

開發行動裝置瀏覽器的 ASP.NET Web 網頁,與開發桌上型瀏覽器的網頁並沒有太大的不同。為了協助您建立行動裝置的應用程式,ASP.NET 提供專門為 Mobile Web 開發設計的 System.Web.Mobile 命名空間。

您可以從 MobilePage 基底類別建立 Web 網頁,以及從 System.Web.Mobile 命名空間加入控制項。這個命名空間定義一套 Web 伺服器控制項和配接器,當建立需要在許多不同行動裝置 (例如行動電話) 上使用的應用程式時,這些控制項和程式就特別有用。

ASP.NET 2.0 也提供控制項相容的架構,它允許建立 ASP.NET 2.0 Web 伺服器控制項的自訂裝置配接器。配接器可以根據要求的瀏覽器,建立控制項的自訂呈現。在相容的架構下,您可以建立 ASP.NET Web 伺服器控制項的自訂配接器,以便呈現對在桌上型瀏覽器上存取應用程式的裝置特定的輸出。

不管是開發桌上型瀏覽器還是行動裝置,程式開發都遵循諸如應用程式回應使用者要求、按鈕點選之類的標準 .NET 事件驅動 (Event-Driven) 模型。

行動應用程式架構

雖然 ASP.NET 會整合技術,讓 ASP.NET Mobile Web 應用程式開發採用與傳統 Web 應用程式開發的相同模式。但是這個架構的主要目的,並不是讓您建立同時可以滿足桌上型和行動裝置之瀏覽器的網頁。行動裝置上的瀏覽器之限制通常是表示專為桌上型瀏覽器設計的網頁無法轉譯成行動裝置瀏覽器。

例如,如果您建立包含網站標頭、在頁面頂端的巡覽列、網頁邊的次要巡覽結構,以及其他網頁內容的 ASP.NET Web 網頁,網頁就會以桌上型瀏覽器設計的方式呈現。在這種情況下,通常都會有足夠的空間呈現所有控制項,並且同時提供可捲動的內容區域。然而,在許多行動裝置瀏覽器中,這種配置是不可能的。許多行動裝置的畫面區域都比桌上型螢幕小,所以巡覽就變成多重步驟的程序,使用者必須按下許多控制項才能取得網頁內容。

展示邏輯有類似的模式。例如,當使用者使用桌上型瀏覽器填入 Web 表單時,使用者可以在畫面上同時看見許多控制項。當在伺服器上驗證表單時,驗證錯誤可以顯示在控制項旁邊。但在行動裝置下,要以可用的格式顯示表單輸入和驗證是極為困難的。此外,因為在裝置上輸入可能會很困難,所以在行動裝置上您可能也會選擇提供快速鍵,讓使用者在減少輸入次數的情況下填入資訊。

基於以上這些原因,您必須在 ASP.NET Web 應用程式中建立不同的網頁,讓桌上型和行動裝置瀏覽器使用。特別為行動裝置瀏覽器開發的網頁,可以讓您將展示邏輯分割為較小的區塊,以便在裝置的顯示區域和輸入硬體中產生更好的效果。

行動 Web 伺服器控制項

ASP.NET 2.0 System.Web.Mobile 命名空間是專門為 Mobile Web 開發設計的。您可以從 MobilePage 基底類別建立 Mobile Web 網頁,以及從 System.Web.Mobile 命名空間加入 Mobile Web 伺服器控制項。Mobile Web 伺服器控制項在 .NET Framework 中有一些專門的配接器,因此特別適合針對範圍廣泛的行動裝置開發 Mobile Web 應用程式。

ASP.NET Web 伺服器控制項和配接器架構

大部分的 ASP.NET 2.0 Web 伺服器控制項都支援一致的配接器架構,也就是說,透過呼叫提供裝置之適當行為的配接器 (例如建立適合的標記語言),所有控制項都會因要求的裝置而有不同的行為。如果在要求的裝置或瀏覽器之瀏覽器定義檔案中設定配接器,ASP.NET 會在 Web 伺服器控制項的每個生命週期階段呼叫配接器。之後,配接器例如就可以調整呈現的輸出,並處理任何裝置特定的檢視狀態邏輯或是裝置特性。您可以在 .NET Framework Config 目錄的 Browsers 資料夾,或 Web 應用程式的 App_Browsers 資料夾中找到瀏覽器定義檔。

目前 ASP.NET 控制項沒有專屬的配接器,但有一系列適合 ASP.NET Mobile 控制項的配接器,以供給各種裝置和瀏覽器使用。

您可以為每個裝置建立自訂配接器,然後讓 ASP.NET Web 網頁架構在特定裝置存取網頁時使用這些配接器。如需詳細資訊,請參閱適應性控制項行為的架構性概觀

選擇自訂配接器或行動控制項

對於以行動裝置為主的網頁,您必須使用 Mobile Web 伺服器控制項,並建立繼承自 MobilePage 的網頁。這類的控制項支援許多行動裝置 (例如行動電話)。ASP.NET 包含種類多元的 Mobile Web 伺服器控,能夠滿足一般的 Web 開發以行動特定的需求。此外,大部分的裝置和其標記語言都已經有行動控制裝置的配接器。

隨著主要標記語言的不斷發展時,Microsoft 將繼續提供 Mobile Web 伺服器控制項的配接器更新。這樣,您可以透過目前使用的相同控制項支援新的標記語言。例如,如果您所建立的是支援桌上型瀏覽器和大量行動裝置的電子商務網站,您應該建立一組繼承自 Page 類別的 ASP.NET Web 網頁,以及另一組繼承自 MobilePage 基底類別並使用行動控制項的網頁。

如果需要的話,您還可以建立自己的配接器或修改現有的配接器,其中新裝置指定 Mobile Web 伺服器控制項中的新行為要求。

在某些案例中使用 ASP.NET Web 伺服器控制項和撰寫自訂配接器才有意義。通常的情況是,使用豐富型桌上型瀏覽器的應用程式,因為這些瀏覽器的行動變化屬於必要條件,或者是由限制的裝置類別所限定的應用程式,因為並沒有限制一定使用哪些行動控制項及其功能集。其中一個可能範例是,如果您建立的保險理賠給付應用程式同時具有適合在辦公室內使用的瀏覽器架構介面,以及在辦公室以外的地方使用的多裝置介面。應用程式就可以在標準網頁和豐富型裝置網頁上使用相同的基底網頁類別。您就只需要自訂適用於辦公室以外之部署的裝置配接器。

請參閱

其他資源

建立 ASP.NET Mobile Web 網頁