開發ASP.NET Atlas伺服器端Extender控制項——基本概念以及預先需求

來源:互聯網
上載者:User
作者:Dflying Chen (http://dflying.cnblogs.com/)

Microsoft ASP.NET Atlas的出現幾乎顛覆了整個傳統的ASP.NET開發概念,理論上講,最“純粹”的Atlas應用程式將把一切表現層全部移到用戶端進行,伺服器端僅僅是提供用戶端需要的服務。而目前為止這種用戶端編程模型還沒有很強大的IDE支援(想想編寫,調試JavaScript的時候是多麼的痛苦……),同時考慮到還存在著好多現有的ASP.NET程式,並且開發人員還需要一定的適應/學習時間。這樣Atlas在提供純粹的用戶端面向編程模型的同時,也允許控制項開發人員以伺服器端控制項的形式開發Atlas組件,讓傳統的ASP.NET開發人員在開發時不會覺得有什麼不同之處,他們會同樣得到Visual Studio的設計期支援,編譯期檢查等特性,平緩了程式開發人員的學習曲線。

Atlas的伺服器端控制項大都可以以Extender的形式提供,所謂Extender,顧名思義,就是對現有的控制項的功能,行為等進行擴充的組件。例如,為現有的TextBox控制項加上自動完成(auto complete)功能,為現有的Button控制項加上確認對話方塊等。其中Atlas官方發布的Control Toolkit就是若干個這樣的Extender的集合,您可以到這裡:"Atlas" Control Toolkit更新發布(Version 1.0.60504.0),以及Atlas Control ToolKit 發布得到更詳細的資訊。

對於這種非常常見的開發Extender的需求,Atlas為我們提供了一個Extender的基類以及相應的Visual Studio中的Project Template。在這個系列中,讓我們一起學習如何通過使用Atlas的Extender的基類以及相應的Visual Studio中的Project Template開發我們的自訂Extender。

在整個系列中,我將通過一個控制項的完整開發過程來講解,這裡我選擇的Extender的功能是,在使用者填寫註冊資訊時,使用AJAX方式即時驗證使用者名稱是否被註冊,關於這個功能的詳細介紹以及用戶端Atlas Behavior的實現,請參考:使用ASP.NET Atlas開發即時驗證使用者名稱是否被註冊的自訂Behavior。我推薦對這個系列感興趣的朋友把這篇文章看懂,其中的概念也弄明白,將會在未來的開發中節省好多時間。

在開發這個控制項前,我們需要安裝如下的組件/程式集:

  1. Atlas April CTP,請參考:ASP.NET Atlas April CTP發布,當然,您可以只使用其中的Atlas.dll,但我還是建議您安裝Atlas Web Site的Template,這樣可以在開發的過程中即時測試您的控制項。
  2. Atlas Control Toolkit,請參考:"Atlas" Control Toolkit更新發布(Version 1.0.60504.0),以及Atlas Control ToolKit 發布,下載好運行自解壓檔案AtlasControlToolkit.exe,您將得到三個目錄,其中在目錄AtlasControlExtender下有一個AtlasControlExtender.vsi檔案,如果您不想手動建立Control項目以及眾多的相關檔案/引用,那麼最好還是運行安裝一下這個Visual Studio的Project Template(噢,當然,Visual Studio還是必要的)。

如果一切順利的話,上述兩個步驟以後您在建立Web Site的時候就可以看到Atlas Web Site的Template了;同樣在建立項目的時候也能看到Atlas Control Project的選項。

順便也說一下,AtlasControlToolkit.exe解壓後的三個目錄中的另外兩個:

  1. AtlasControlToolkit目錄中有這個Control Toolkit提供的若干個Extender,都帶有原始碼(不過沒有注釋)。這將是您在開發過程中不可缺少的樣本程式!
  2. SampleWebSite目錄中有上述Extender的使用文檔以及示範程式。您可以在這裡學到如何使用開發好的Extender。

這個Control Toolkit中的所有Extender以及提供的Extender的基類都遵守Microsoft Permissive License協議,這是個非常寬鬆的協議,基本沒有任何限制,請參見http://www.microsoft.com/resources/sharedsource/licensingbasics/permissivelicense.mspx 。

(今天就到這裡吧,不好意思寫了這麼短的文章。實在是有點累了……這個系列大概還要兩三篇左右。順祝各位兒童節快樂)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.