ASP.NETAJAX程式設計(客戶端)

ASP.NETAJAX程式設計(客戶端)

該書從最易於理解和使用的那部分入手,介紹ASP.NET AJAX框架中能夠與傳統ASP.NET無縫對接的伺服器端部分,包括伺服器端ASP.NET AJAX Extensions與ASP.NET AJAX Control Toolkit。

基本介紹

  • 書名:ASP.NETAJAX程式設計(第II卷)客戶端MICROSOFTAJAXLIBRARY與異步通
  • 作者:陳黎夫
  • ISBN:9787115165404
  • 類別:程式設計
  • 定價:55.00 元
  • 出版社:人民郵電出版社
  • 出版時間:2007
  • 裝幀:平裝
  • 開本:16開
  • 字數:620000
內容簡介,作者簡介,目錄,第0章 客戶端與伺服器端編程模型,第一部分 ASP.NET AJAX 1.0核心,第二部分 ASP.NET AJAX Futures CTP,第三部分 實例程式,附錄,

內容簡介

本書系統介紹ASP.NETAjax程式設計知識,共3卷。本卷從最易於理解和使用的那部分入手,介紹ASP.NETAJAX框架中能夠與傳統ASP.NET無縫對接的伺服器端部分,包括伺服器端ASP.NETAJAXExtensions與ASP.NETAJAXControlToolkit。這部分內容不需要讀者有任何的客戶端開發知識,只要在VisualStuio中輕鬆拖放即可實現強大的客戶端Ajax功能,例如局部頁面更新、異步回送、拖放、動畫等,非常適合為現有的ASP.NET2.0應用程式添加少量的Ajax特性,或是基於ASP.NET2.0的一些簡單Ajax功能的實現。
本卷適合對ASP.NETAJAX有興趣,並希望對其有更進一步了解的Web開發人員閱讀。

作者簡介

陳黎夫(DflyingChen)微軟公司Atlas創始團隊——WindowsLiveHotmail的軟體開發工程師,曾使用Atlas參與開發下一代Email系統WindowsLiveMail以及WindowsLiveCalendar等產品,擅長Web相關技術,有著近8年的Web開發經驗。作為Atlas在中國的傳道者之一,他在個人部落格中寫過大量的Atlas技術文章,並引起了廣泛反響。

目錄

第0章 客戶端與伺服器端編程模型

0.1 將表示層完全放到客戶端 2
0.1.1 傳統的ASP.NET編程模型 2
0.1.2 ASP.NET AJAX伺服器端編程模型 2
0.1.3 ASP.NET AJAX客戶端編程模型 3
0.2 將表示層完全放到客戶端的優勢 4

第一部分 ASP.NET AJAX 1.0核心

第1章 ASP.NET AJAX對JavaScript的擴展 
1.1 基本類型擴展 8
1.1.1 Array類型的擴展 8
1.1.2 Boolean類型的擴展 10
1.1.3 Date類型的擴展 10
1.1.4 Error類型的擴展 11
1.1.5 Number類型的擴展 13
1.1.6 Object類型的擴展 14
1.1.7 String類型的擴展 14
1.2 面向對象支持 15
1.2.1 聲明命名空間 16
1.2.2 定義類 16
1.2.3 實現繼承 17
1.2.4 重寫父類的方法 17
1.2.5 定義接口與實現接口 18
1.2.6 定義枚舉類型 19
1.2.7 反射的支持 20
1.3 組件擴展 21
1.3.1 Sys.Component基類 22
1.3.2 Sys.UI.Control基類 24
1.3.3 Behavior基類 25
1.4 增強的DOM操作 25
1.4.1 DomElement類 25
1.4.2 DomEvent類 27
1.4.3 Sys.UI命名空間中的其他擴展 28
1.5 其他常用擴展 29
1.5.1 使用Sys.StringBuilder類高效地操作字元串 29
1.5.2 使用Sys.Debug類輸出調試信息 30
1.6 ASP.NET AJAX框架下的客戶端Web應用程式 32
1.7 小結 37
第2章 異步通信層 39 2.1 異步通信層的功能 40
2.2 異步通信層的架構 40
2.2.1 客戶端架構 41
2.2.2 伺服器端架構 44
2.3 常用類型介紹 45
2.3.1 客戶端類型 46
2.3.2 伺服器端類型 46
2.4 客戶端Sys.Net.WebRequest組件 46
2.5 示例程式:使用客戶端Sys.Net.Web Request組件實現異步通信 47
2.5.1 頁面基礎設施 48
2.5.2 使用POST方式請求伺服器 49
2.5.3 使用GET方式請求伺服器 50
2.5.4 運行示例程式 51
2.6 小結 53
第3章 異步調用Web Service和頁面中的類方法 54
3.1 調用Web Service 54
3.2 調用頁面中的類方法 59
3.3 處理異步調用中的異常 61
3.4 保持用戶上下文 65
3.5 異步通信層生成的客戶端代理類 67
3.6 使用HTTP GET進行調用 71
3.7 伺服器端和客戶端數據類型的自動轉換 72
3.7.1 基本類型 73
3.7.2 枚舉類型 74
3.7.3 複雜類型 77
3.7.4 泛型集合類型 84
3.7.5 數組類型 88
3.7.6 DataTable和DataSet 91
3.8 以XML方式序列化數據 96
3.9 小結 100
第4章 客戶端頁面生存周期 102
4.1 維護客戶端應用程式的Application對象 102
4.1.1 客戶端應用程式事件 103
4.1.2 維護客戶端應用程式中的組件 106
4.1.3 通知腳本載入完成 106
4.1.4 延遲載入腳本 107
4.2 示例程式:維護客戶端組件 108
4.2.1 編寫自定義Clock組件 108
4.2.2 在應用程式中添加Clock組件 110
4.2.3 取得程式中現存組件的信息 111
4.2.4 查找並移除Clock組件 112
4.3 管理異步回送過程的PageRequestManager對象 113
4.3.1 PageRequestManager對象的事件 114
4.3.2 PageRequestManager對象的屬性和方法 118
4.4 客戶端頁面生存周期總結 118
4.4.1 典型的客戶端頁面生存周期 119
4.4.2 示例程式:客戶端事件的觸發順序 120
4.4.3 常見場景下的客戶端頁面生存周期 123
4.5 示例程式:防止用戶多次提交 125
4.6 示例程式:停止正在執行的異步回送 129
4.7 示例程式:在進行異步回送時給用戶充分提示 132
4.8 示例程式:處理異步回送時發生的異常 134
4.9 示例程式:管理多個異步回送的優先權 138
4.10 示例程式:在異步回送中捎帶數據 141
4.11 小結 146
第5章 應用程式服務和本地化 148
5.1 身份驗證組件:AuthenticationService 148
5.1.1 login()方法 149
5.1.2 logout()方法 150
5.1.3 常用屬性 151
5.2 示例程式:實現用戶登錄和註銷 152
5.2.1 啟用身份驗證應用程式服務 152
5.2.2 配置Membership資料庫並創建用戶 153
5.2.3 創建受保護的目錄 155
5.2.4 示例程式的UI部分 155
5.2.5 示例程式的JavaScript代碼部分 157
5.2.6 運行示例程式 159
5.3 用戶個性化組件:ProfileService 160
5.3.1 load()方法 161
5.3.2 save()方法 162
5.3.3 properties欄位 163
5.3.4 常用屬性 164
5.4 示例程式:讀取、修改並保存用戶個性化信息 165
5.4.1 啟用用戶個性化應用程式服務 165
5.4.2 示例程式的UI部分 166
5.4.3 示例程式的JavaScript代碼部分 167
5.4.4 運行示例程式 170
5.5 自定義應用程式服務的伺服器端實現 171
5.5.1 自定義身份驗證Web Service 171
5.5.2 自定義用戶個性化Web Service 172
5.6 創建支持多語言的ASP.NET AJAX站點 174
5.6.1 讓ASP.NET頁面支持多語言 174
5.6.2 創建支持本地化的JavaScript腳本檔案 175
5.6.3 使用ScriptManager將多語言腳本檔案引入到頁面中 177
5.6.4 根據用戶區域設定自動選擇站點語言 178
5.6.5 讓用戶手工選擇站點語言 180
5.7 小結 181

第二部分 ASP.NET AJAX Futures CTP

第6章 客戶端組件、XML腳本語言與綁定 184
6.1 與伺服器端組件媲美的客戶端組件 184
6.1.1 客戶端組件的基本概念 185
6.1.2 客戶端組件分類 186
6.2 一種新的編程模型——ASP.NET AJAX XML腳本 188
6.2.1 使用JavaScript以編程方式實現 189
6.2.2 使用ASP.NET AJAX XML腳本以聲明方式實現 191
6.2.3 混合使用JavaScript和ASP.NET AJAX XML腳本 192
6.3 面向組件的編程思維 194
6.4 綁定——組件之間的黏合劑 195
6.4.1 初識綁定:簡單的示例程式 196
6.4.2 綁定詳解 197
6.5 在綁定中使用轉換器 200
6.6 示例程式:使用ASP.NET AJAX XML腳本和ASP.NET AJAX客戶端組件實現搜尋 202
6.6.1 創建提供搜尋服務的Web Service 203
6.6.2 編寫頁面的HTML部分 205
6.6.3 編寫頁面的ASP.NET AJAX腳本代碼部分 206
6.6.4 運行示例程式 209
6.7 小結 209
第7章 簡單客戶端控制項/組件 211
7.1 基本UI控制項 211
7.1.1 封裝了DOM元素的UI控制項 212
7.1.2 InputControl和TextBox控制項 214
7.1.3 Button控制項 214
7.1.4 CheckBox控制項 216
7.1.5 Label控制項 216
7.1.6 HyperLink控制項 216
7.1.7 Selector控制項 217
7.1.8 Image控制項 218
7.1.9 使用基本UI控制項 218
7.2 使用動作組件回響事件 224
7.2.1 Action基類介紹 225
7.2.2 使用SetPropertyAction動作設定組件的屬性 225
7.2.3 使用InvokeMethodAction動作調用組件的方法 226
7.2.4 使用PostBackAction動作模擬回送操作 228
7.2.5 在JavaScript中以編程方式使用動作組件 229
7.2.6 示例程式:控制頁面內容的字號 230
7.3 使用驗證器組件驗證輸入 234
7.3.1 Validator基類、ValidationErrorLabel控制項以及驗證過程 235
7.3.2 使用RequiredFieldValidator驗證器確保存在輸入 237
7.3.3 使用TypeValidator驗證器確保輸入值為特定類型 238
7.3.4 使用RangeValidator驗證器確保輸入值的範圍 238
7.3.5 使用RegexValidator驗證器用正則表達式驗證輸入 239
7.3.6 使用CustomValidator驗證器自定義驗證流程 239
7.3.7 使用ValidationGroup組合多個驗證器 240
7.3.8 在JavaScript中以編程方式使用驗證器 241
7.3.9 示例程式:驗證輸入表單 242
7.4 使用行為組件增強用戶界面的功能 246
7.4.1 使用ClickBehavior為DOM元素添加click事件 248
7.4.2 使用OpacityBehavior控制DOM元素的不透明度 249
7.4.3 使用LayoutBehavior設定DOM元素的位置 251
7.4.4 在JavaScript中以編程方式使用行為組件 252
7.4.5 在行為組件中使用綁定 253
7.5 使用動畫組件實現動畫效果 255
7.5.1 Animation基類介紹 256
7.5.2 使用FadeAnimation動畫組件實現淡入淡出效果 257
7.5.3 離散屬性動畫組件 259
7.5.4 示例程式:使用DiscreteAnimation動畫組件實現抽獎功能 260
7.5.5 連續屬性動畫組件 262
7.5.6 組合動畫組件 265
7.6 客戶端的計數器——Counter組件 267
7.6.1 Counter組件介紹 267
7.6.2 示例程式 268
7.7 使用Timer組件在客戶端定時觸發事件 269
7.7.1 Timer組件介紹 269
7.7.2 示例程式:定時查詢伺服器獲得最新信息 269
7.8 小結 271
第8章 數據源組件和數據綁定UI控制項 273
8.1 組件化的數據訪問模型 273
8.2 為數據綁定UI控制項提供數據 275
8.2.1 伺服器端DataService類 275
8.2.2 完善的客戶端DataTable對象 278
8.2.3 客戶端DataSource數據源 279
8.2.4 客戶端XMLDataSource數據源 281
8.2.5 客戶端數據的修飾者--DataView 281
8.3 使用ListView控制項顯示列表數據 282
8.3.1 DataControl控制項介紹 282
8.3.2 ListView控制項介紹 283
8.3.3 示例程式 284
8.3.4 補充說明 290
8.4 使用DataNavigator控制項實現客戶端分頁導航 290
8.4.1 DataNavigator控制項介紹 291
8.4.2 示例程式 291
8.5 使用DataFilter組件在客戶端過濾數據 295
8.5.1 DataFilter和PropertyFilter組件介紹 296
8.5.2 示例程式 296
8.6 使用SortBehavior行為實現客戶端排序 299
8.6.1 SortBehavior行為介紹 299
8.6.2 示例程式 300
8.7 使用ItemView控制項維護集合中的單個條目 304
8.7.1 ItemView控制項介紹 304
8.7.2 示例程式 304
8.8 使用XSLTView控制項用XSLT修飾並顯示XML數據 313
8.8.1 XSLTView控制項介紹 313
8.8.2 示例程式 314
8.9 小結 316
第9章 實現客戶端拖放效果 318
9.1 客戶端拖放功能框架 318
9.1.1 DragDropManager對象 320
9.1.2 IDragSource接口 320
9.1.3 IDropTarget接口 321
9.1.4 創建可拖放的客戶端應用程式 322
9.2 使用DragDropList實現可拖放列表 322
9.2.1 DragDropList行為和DraggableListItem行為 322
9.2.2 示例程式:仿Google個性化主頁 323
9.3 示例程式:實現IDragSource和IDropTarget接口將商品拖放至購物車中 329
9.3.1 示例程式功能 329
9.3.2 編寫伺服器端Web Service 331
9.3.3 編寫DraggableProduct-Behavior實現可拖動的商品 333
9.3.4 編寫ShoppingCartBehavior實現可接受商品投放的購物車 335
9.3.5 編寫頁面代碼 338
9.3.6 通過Web Service取得商品並顯示在頁面中 339
9.3.7 將購物車中的商品提交回Web Service處理 340
9.4 ASP.NET AJAX中拖放功能實現方式總結 340
9.4.1 使用伺服器端DragOverlay-Extender或客戶端Drag-OverlayBehavior 341
9.4.2 使用伺服器端DragPanel擴展器控制項 342
9.4.3 使用伺服器端ReorderList控制項 343
9.4.4 使用UpdatePanel與ASP.NET AJAX帶來的新版本WebPart控制項 343
9.4.5 使用客戶端DragDropList行為 344
9.4.6 自定義實現客戶端IDragSource和IDropTarget接口 345
9.4.7 各種拖放實現方法的比較 346
9.5 小結 346
第10章 通過Web Service橋調用遠程 Web Service 347
10.1 以用戶為本的Mashup理念 347
10.2 在客戶端調用其他主機上的Web Service 349
10.2.1 力不從心的JavaScript 349
10.2.2 “曲線救國”的本地伺服器代理 351
10.2.3 更進一步的Web Service橋 352
10.2.4 在ASP.NET AJAX中啟用Web Service橋 353
10.3 簡單的Web Service橋示例 354
10.3.1 模擬一個遠程Web Service 354
10.3.2 編寫本地Web Service橋 355
10.3.3 通過Web Service橋間接調用遠程Web Service 356
10.3.4 運行示例程式 357
10.4 示例程式:調用Yahoo! Weather服務 358
10.4.1 熟悉Yahoo! Weather服務 358
10.4.2 編寫本地Web Service橋 361
10.4.3 通過Web Service橋間接調用Yahoo! Weather服務 363
10.4.4 運行示例程式 364
10.5 示例程式:調用Google Search服務 365
10.5.1 熟悉Google Search服務 365
10.5.2 編寫本地Web Service橋 365
10.5.3 通過Web Service橋間接調用Google Search服務 369
10.5.4 運行示例程式 370
10.6 小結 371

第三部分 實例程式

第11章 實例程式:RSS閱讀器 374
11.1 RSS閱讀器的功能 374
11.2 數據:編寫伺服器端Web Service 377
11.2.1 表示提要中摘要信息的RssEntry類 377
11.2.2 表示提要中內容條目的ContentEntry類 379
11.2.3 使用RSS.NET類庫輔助解析提要 380
11.2.4 聲明Web Service類 381
11.2.5 獲取當前所有的提要 381
11.2.6 添加新提要 382
11.2.7 返回指定提要中的內容條目 382
11.2.8 測試Web Service 383
11.3 表現:設計界面 384
11.3.1 導航欄 384
11.3.2 內容欄 385
11.3.3 更新提示面板 385
11.3.4 完整的HTML代碼 386
11.4 行為:用JavaScript讓程式運作起來 387
11.4.1 在客戶端應用程式初始化完畢時載入提要列表 387
11.4.2 在用戶點擊提要列表條目時取得該提要的內容 388
11.4.3 實現添加提要功能 389
11.4.4 將Web Service以及JavaScript引入到客戶端頁面中 390
11.5 還可以如何實現 390
11.5.1 用組件封裝功能模組 390
11.5.2 用Web Service橋取得提要內容 391
11.5.3 用ListView顯示提要列表 391
11.5.4 用XSLTView顯示提要內容 391
11.6 繼續完善的方向 391
11.6.1 處理異常 391
11.6.2 允許添加其他類型的提要 392
11.6.3 保存用戶的自定義提要 393
11.6.4 讓添加提要的過程更加容易 393
11.6.5 支持編輯/刪除提要 393
11.6.6 支持對提要進行分類管理 393
11.6.7 用拖放維護提要所在的分類或改變提要之間的順序 394
11.7 小結 395

附錄

使用ASP.NET AJAX JavaScript Class Browser查看客戶端類型 396

相關詞條

熱門詞條

聯絡我們