ASP.NET AJAX入門
本書は、Webアプリケーション開発で標準となりつつあるAJAXが2007年にASP.NETと融合して誕生した「ASP.NET AJAX」について、その基礎から応用、Tips、カスタムコンポーネント開発までを豊富なサンプルとともに解説した入門書です。ASP.NET開発者にとってまさに待望のWindows標準のAJAXフレームワークの登場です。クライアントサイドとサーバーサイドを一貫して開発できるVisual StudioやVisual Web Developerが利用できるようになり、高い生産性を獲得しました。本書にはVisual C#、Visual Basicのサンプルコードのダウンロードサービスも付いていますので、次世代のWebリッチクライアント開発を体験しながら学習できます。
【サポートはこちら】→http://www.shuwasystem.co.jp/books/7980/1778-7/1778-7.html
【サポートはこちら】→http://www.shuwasystem.co.jp/books/7980/1778-7/1778-7.html
1章 AJAX概要
1.1 AJAXとは
1.1.1 非同期処理と部分更新
1.1.2 XMLHttpRequestを使用したAJAXサンプル
1.1.3 JSON
1.1.4 XMLHttpRequestを使用したAJAXサンプル(JSON版)
1.2 AJAX開発の問題点
2章 ASP.NET AJAX概要
2.1 ASP.NET AJAXフレームワークの登場
2.1.1 ASP.NET AJAXのメリット
2.1.2 ASP.NET AJAX公式Webサイト
2.2 ASP.NET AJAXの構成
2.2.1 ASP.NET AJAX Extensions
2.2.2 Microsoft AJAX Library
2.2.3 ASP.NET AJAX Control Toolkit
2.2.4 ASP.NET Futures
3章 ASP.NET AJAXプログラミング基礎編
3.1 開発環境の準備
3.1.1 開発環境について
3.1.2 ASP.NET 2.0 AJAX Extensions 1.0のセットアップ
3.1.3 ASP.NET AJAX Control Toolkitのセットアップ
3.1.4 ASP.NET AJAXドキュメント
3.2 ASP.NET AJAX Extensionsを使用する
3.2.1 ASP.NET AJAX Webサイトの新規作成
3.2.2 UpdatePanelコントロール
3.2.2.1 通常のポストバック処理
3.2.2.2 UpdatePanelコントロールによるページの部分更新
3.2.2.3 Triggersコレクションを使ったUpdatePanelコントロールのトリガ設定
3.2.2.4 UpdatePanelコントロールの複数配置
3.2.2.5 UpdatePanelコントロールの動作
3.2.2.6 UpdatePanelコントロールでサポートされないASP.NETサーバコントロール
3.2.3 UpdateProgressコントロール
3.2.3.1 1つのUpdateProgressコントロールを
複数のUpdatePanelコントロールで使用する
3.2.3.2 UpdateProgressコントロールを
1つのUpdatePanelコントロールに関連付ける
3.2.4 Timerコントロール
3.2.4.1 UpdatePanelコントロールでTimerコントロールを使う
3.2.4.2 Timerコントロールを使って2つのUpdatePanelコントロールを同時に更新する
3.2.5 ScriptManagerコントロール
3.2.5.1 スクリプトファイルの登録
3.2.5.2 Webサービスの登録
3.2.6 ScriptManagerProxyコントロール
3.2.6.1 マスタページとScriptManagerProxyコントロール
3.3 Microsoft AJAX Libraryを使用する
3.3.1 グローバル名前空間(Global Namespace)
3.3.1.1 Arrayオブジェクト型拡張
3.3.1.2 Booleanオブジェクト型拡張
3.3.1.3 Dateオブジェクト型拡張
3.3.1.4 Errorオブジェクト型拡張
3.3.1.5 Numberオブジェクト型拡張
3.3.1.6 Objectオブジェクト型拡張
3.3.1.7 Stringオブジェクト型拡張
3.3.1.8 Typeクラス
3.3.1.9 ショートカット関数
3.3.2 Sys名前空間
3.3.2.1 Applicationクラスによるクライアントイベント
3.3.2.2 StringBuilderクラスによる文字列操作
3.3.3 Sys.Net名前空間
3.3.3.1 WebRequestクラスによるHTTPリクエスト処理
3.3.3.2 WebServiceErrorクラスによるWebサービスエラー処理
3.3.4 Sys.Serialization名前空間
3.3.4.1 JavaScriptSerializerクラスによるJSONデータ変換
3.3.5 Sys.Services名前空間
3.3.6 Sys.UI名前空間
3.3.6.1 DomElementクラスおよび
BoundsクラスとPointクラスによるDOM要素のスタイル操作
3.3.6.2 DomEventクラスによるDOM要素のイベント操作
3.3.7 Sys.WebForms名前空間
3.3.7.1 PageRequestManagerクラスによる非同期ポストバックのイベント管理
3.4 ASP.NET AJAX Control Toolkitを使用する
3.4.1 ASP.NET AJAX Control Toolkit Webサイトの新規作成
3.4.2 Calendarエクステンダ
3.4.3 TextBoxWatermarkエクステンダ
3.4.4 FilteredTextBoxエクステンダ
3.4.5 MaskedEditエクステンダ
3.4.6 NumericUpDownエクステンダ
3.4.7 PasswordStrengthエクステンダ
3.4.8 Sliderエクステンダ
3.4.9 ConfirmButtonエクステンダ
3.4.10 ValidatorCalloutエクステンダ
3.4.11 AutoCompleteエクステンダ
3.4.12 CascadingDropDownエクステンダ
3.4.13 Ratingコントロール
3.4.14 AlwaysVisibleControlエクステンダ
3.4.15 CollapsiblePanelエクステンダ
3.4.16 DragPanelエクステンダ
3.4.17 DynamicPopulateエクステンダ
3.4.18 ModalPopupエクステンダ
3.4.19 PopupControlエクステンダ
3.4.20 ResizableControlエクステンダ
3.4.21 RoundedCornersエクステンダ
3.4.22 DropShadowエクステンダ
3.4.23 Tabコントロール
3.4.24 HoverMenuエクステンダ
3.4.25 ReorderListコントロール
3.4.26 Animationエクステンダ
3.4.27 UpdatePanelAnimationエクステンダ
3.5 ASP.NET AJAXのデバッグ手法
3.5.1 Internet Explorerのスクリプトデバッグ設定
3.5.2 Web.configファイルの修正
3.5.3 スクリプト エクスプローラ ウィンドウ
3.5.4 Sys.Debugクラス
3.5.5 HTTPトラフィックのキャプチャツール
3.5.6 Internet Explorer以外のWebブラウザを使ったデバッグ
3.6 ASP.NET AJAX Webアプリケーションの発行
3.6.1 アプリケーションの設定
3.6.2 運用サーバの設定
4章 ASP.NET AJAXプログラミング 応用編
4.1 ASP.NET AJAX Tips
4.1.1 UpdatePanelコントロールを使いこなす
4.1.1.1 UpdatePanelコントロール内に配置するコントロールやHTML要素は最小限に
4.1.1.2 UpdatePanelコントロール内に配置したコントロールのフォーカスについて
4.1.1.3 UpdatePanelコントロール内にTimerコントロールは配置しない
4.1.1.4 UpdatePanelコントロールのネスト配置とUpdateModeプロパティ
4.1.2 非同期ポストバックのキャンセル処理とエラー処理
4.1.2.1 非同期ポストバック開始前に条件によりリクエストをキャンセルする
4.1.2.2 非同期ポストバック処理中にユーザがリクエストを中止できるようにする
4.1.2.3 非同期ポストバック時のエラーをクライアント側スクリプトで処理する
4.1.2.4 非同期ポストバック時のエラーをサーバコードで処理する
4.1.3 クライアント側スクリプトによるWebサービスの呼び出し
4.1.3.1 Webサービスプロキシクラスのメソッドを使用する
4.1.3.2 Webサービスとクライアント側スクリプトで複合型を使用する
4.1.3.3 Webサービスのメソッド引数にDictionaryジェネリック型を使用する
4.1.3.4 Webサービスのレスポンスデータのシリアライズ形式と
HTTPリクエストメソッドを変更する
4.1.3.5 Webサービスの代わりにページメソッドを使用する
4.1.4 ASP.NET AJAXで非同期ポストバック処理中の多重リクエストを防ぐには
4.1.4.1 UpdatePanelコントロールとクライアント側イベントを使用する
4.1.4.2 AJAX Control ToolkitのUpdatePanelAnimationExtenderを使用する
4.1.5 ASP.NET 2.0アプリケーションサービスをASP.NET AJAXで使用する
4.1.5.1 ASP.NET認証サービスを使用する
4.1.5.2 ASP.NETプロファイルサービスを使用する
4.1.6 ASP.NET 2.0 WebサイトのASP.NET AJAXフレームワーク対応方法
4.1.6.1 既存のASP.NET 2.0 Webサイトで
ASP.NET AJAX Extensionsを使用するには
4.1.6.2 既存のASP.NET 2.0 Webサイトで
ASP.NET AJAX Control Toolkitを使用するには
4.1.6.3 既存のASP.NET 2.0 Webサービスを
ASP.NET AJAXフレームワークに対応するには
4.2 ASP.NET AJAXの拡張
4.2.1 ASP.NET AJAXエクステンダコントロールの作成
4.2.1.1 JavaScriptとMicrosoft AJAX Libraryによるクライアントビヘイビアの作成
4.2.1.2 クライアントビヘイビアを埋め込んだエクステンダコントロールの作成
4.2.1.3 カスタムエクステンダコントロールをWebページで使用する
4.2.2 AJAX Control Toolkitを利用したエクステンダコントロールの作成
4.2.2.1 「ASP.NET AJAX Control Project」テンプレートによるプロジェクトの作成
4.2.2.2 ビヘイビアとプロパティの実装
4.2.2.3 カスタムエクステンダコントロールをWebページで使用する
付録 ASP.NET AJAXサーバコントロール簡易リファレンス
UpdatePanelコントロール
UpdateProgressコントロール
Timerコントロール
ScriptManagerコントロール
ScriptManagerProxyコントロール
コラム目次
XML-Scriptとは
Windows VistaでVisual Studio 2005を使用する
XMLHttpRequestのクロスドメイン制限
pageLoad関数とpageUnload関数
AJAX Control ToolkitのToolkitScriptManagerコントロール
Visual Studio 2008におけるエクステンダの追加方法
Visual Studio 2008とスクリプトドキュメント
ASP.NET AJAXにおけるJSONデータの最大サイズ
$addHandler関数と$addHandlers関数を使用したイベントハンドラの登録
Visual Studio 2008におけるASP.NET AJAXカスタムコンポーネントの作成
1.1 AJAXとは
1.1.1 非同期処理と部分更新
1.1.2 XMLHttpRequestを使用したAJAXサンプル
1.1.3 JSON
1.1.4 XMLHttpRequestを使用したAJAXサンプル(JSON版)
1.2 AJAX開発の問題点
2章 ASP.NET AJAX概要
2.1 ASP.NET AJAXフレームワークの登場
2.1.1 ASP.NET AJAXのメリット
2.1.2 ASP.NET AJAX公式Webサイト
2.2 ASP.NET AJAXの構成
2.2.1 ASP.NET AJAX Extensions
2.2.2 Microsoft AJAX Library
2.2.3 ASP.NET AJAX Control Toolkit
2.2.4 ASP.NET Futures
3章 ASP.NET AJAXプログラミング基礎編
3.1 開発環境の準備
3.1.1 開発環境について
3.1.2 ASP.NET 2.0 AJAX Extensions 1.0のセットアップ
3.1.3 ASP.NET AJAX Control Toolkitのセットアップ
3.1.4 ASP.NET AJAXドキュメント
3.2 ASP.NET AJAX Extensionsを使用する
3.2.1 ASP.NET AJAX Webサイトの新規作成
3.2.2 UpdatePanelコントロール
3.2.2.1 通常のポストバック処理
3.2.2.2 UpdatePanelコントロールによるページの部分更新
3.2.2.3 Triggersコレクションを使ったUpdatePanelコントロールのトリガ設定
3.2.2.4 UpdatePanelコントロールの複数配置
3.2.2.5 UpdatePanelコントロールの動作
3.2.2.6 UpdatePanelコントロールでサポートされないASP.NETサーバコントロール
3.2.3 UpdateProgressコントロール
3.2.3.1 1つのUpdateProgressコントロールを
複数のUpdatePanelコントロールで使用する
3.2.3.2 UpdateProgressコントロールを
1つのUpdatePanelコントロールに関連付ける
3.2.4 Timerコントロール
3.2.4.1 UpdatePanelコントロールでTimerコントロールを使う
3.2.4.2 Timerコントロールを使って2つのUpdatePanelコントロールを同時に更新する
3.2.5 ScriptManagerコントロール
3.2.5.1 スクリプトファイルの登録
3.2.5.2 Webサービスの登録
3.2.6 ScriptManagerProxyコントロール
3.2.6.1 マスタページとScriptManagerProxyコントロール
3.3 Microsoft AJAX Libraryを使用する
3.3.1 グローバル名前空間(Global Namespace)
3.3.1.1 Arrayオブジェクト型拡張
3.3.1.2 Booleanオブジェクト型拡張
3.3.1.3 Dateオブジェクト型拡張
3.3.1.4 Errorオブジェクト型拡張
3.3.1.5 Numberオブジェクト型拡張
3.3.1.6 Objectオブジェクト型拡張
3.3.1.7 Stringオブジェクト型拡張
3.3.1.8 Typeクラス
3.3.1.9 ショートカット関数
3.3.2 Sys名前空間
3.3.2.1 Applicationクラスによるクライアントイベント
3.3.2.2 StringBuilderクラスによる文字列操作
3.3.3 Sys.Net名前空間
3.3.3.1 WebRequestクラスによるHTTPリクエスト処理
3.3.3.2 WebServiceErrorクラスによるWebサービスエラー処理
3.3.4 Sys.Serialization名前空間
3.3.4.1 JavaScriptSerializerクラスによるJSONデータ変換
3.3.5 Sys.Services名前空間
3.3.6 Sys.UI名前空間
3.3.6.1 DomElementクラスおよび
BoundsクラスとPointクラスによるDOM要素のスタイル操作
3.3.6.2 DomEventクラスによるDOM要素のイベント操作
3.3.7 Sys.WebForms名前空間
3.3.7.1 PageRequestManagerクラスによる非同期ポストバックのイベント管理
3.4 ASP.NET AJAX Control Toolkitを使用する
3.4.1 ASP.NET AJAX Control Toolkit Webサイトの新規作成
3.4.2 Calendarエクステンダ
3.4.3 TextBoxWatermarkエクステンダ
3.4.4 FilteredTextBoxエクステンダ
3.4.5 MaskedEditエクステンダ
3.4.6 NumericUpDownエクステンダ
3.4.7 PasswordStrengthエクステンダ
3.4.8 Sliderエクステンダ
3.4.9 ConfirmButtonエクステンダ
3.4.10 ValidatorCalloutエクステンダ
3.4.11 AutoCompleteエクステンダ
3.4.12 CascadingDropDownエクステンダ
3.4.13 Ratingコントロール
3.4.14 AlwaysVisibleControlエクステンダ
3.4.15 CollapsiblePanelエクステンダ
3.4.16 DragPanelエクステンダ
3.4.17 DynamicPopulateエクステンダ
3.4.18 ModalPopupエクステンダ
3.4.19 PopupControlエクステンダ
3.4.20 ResizableControlエクステンダ
3.4.21 RoundedCornersエクステンダ
3.4.22 DropShadowエクステンダ
3.4.23 Tabコントロール
3.4.24 HoverMenuエクステンダ
3.4.25 ReorderListコントロール
3.4.26 Animationエクステンダ
3.4.27 UpdatePanelAnimationエクステンダ
3.5 ASP.NET AJAXのデバッグ手法
3.5.1 Internet Explorerのスクリプトデバッグ設定
3.5.2 Web.configファイルの修正
3.5.3 スクリプト エクスプローラ ウィンドウ
3.5.4 Sys.Debugクラス
3.5.5 HTTPトラフィックのキャプチャツール
3.5.6 Internet Explorer以外のWebブラウザを使ったデバッグ
3.6 ASP.NET AJAX Webアプリケーションの発行
3.6.1 アプリケーションの設定
3.6.2 運用サーバの設定
4章 ASP.NET AJAXプログラミング 応用編
4.1 ASP.NET AJAX Tips
4.1.1 UpdatePanelコントロールを使いこなす
4.1.1.1 UpdatePanelコントロール内に配置するコントロールやHTML要素は最小限に
4.1.1.2 UpdatePanelコントロール内に配置したコントロールのフォーカスについて
4.1.1.3 UpdatePanelコントロール内にTimerコントロールは配置しない
4.1.1.4 UpdatePanelコントロールのネスト配置とUpdateModeプロパティ
4.1.2 非同期ポストバックのキャンセル処理とエラー処理
4.1.2.1 非同期ポストバック開始前に条件によりリクエストをキャンセルする
4.1.2.2 非同期ポストバック処理中にユーザがリクエストを中止できるようにする
4.1.2.3 非同期ポストバック時のエラーをクライアント側スクリプトで処理する
4.1.2.4 非同期ポストバック時のエラーをサーバコードで処理する
4.1.3 クライアント側スクリプトによるWebサービスの呼び出し
4.1.3.1 Webサービスプロキシクラスのメソッドを使用する
4.1.3.2 Webサービスとクライアント側スクリプトで複合型を使用する
4.1.3.3 Webサービスのメソッド引数にDictionaryジェネリック型を使用する
4.1.3.4 Webサービスのレスポンスデータのシリアライズ形式と
HTTPリクエストメソッドを変更する
4.1.3.5 Webサービスの代わりにページメソッドを使用する
4.1.4 ASP.NET AJAXで非同期ポストバック処理中の多重リクエストを防ぐには
4.1.4.1 UpdatePanelコントロールとクライアント側イベントを使用する
4.1.4.2 AJAX Control ToolkitのUpdatePanelAnimationExtenderを使用する
4.1.5 ASP.NET 2.0アプリケーションサービスをASP.NET AJAXで使用する
4.1.5.1 ASP.NET認証サービスを使用する
4.1.5.2 ASP.NETプロファイルサービスを使用する
4.1.6 ASP.NET 2.0 WebサイトのASP.NET AJAXフレームワーク対応方法
4.1.6.1 既存のASP.NET 2.0 Webサイトで
ASP.NET AJAX Extensionsを使用するには
4.1.6.2 既存のASP.NET 2.0 Webサイトで
ASP.NET AJAX Control Toolkitを使用するには
4.1.6.3 既存のASP.NET 2.0 Webサービスを
ASP.NET AJAXフレームワークに対応するには
4.2 ASP.NET AJAXの拡張
4.2.1 ASP.NET AJAXエクステンダコントロールの作成
4.2.1.1 JavaScriptとMicrosoft AJAX Libraryによるクライアントビヘイビアの作成
4.2.1.2 クライアントビヘイビアを埋め込んだエクステンダコントロールの作成
4.2.1.3 カスタムエクステンダコントロールをWebページで使用する
4.2.2 AJAX Control Toolkitを利用したエクステンダコントロールの作成
4.2.2.1 「ASP.NET AJAX Control Project」テンプレートによるプロジェクトの作成
4.2.2.2 ビヘイビアとプロパティの実装
4.2.2.3 カスタムエクステンダコントロールをWebページで使用する
付録 ASP.NET AJAXサーバコントロール簡易リファレンス
UpdatePanelコントロール
UpdateProgressコントロール
Timerコントロール
ScriptManagerコントロール
ScriptManagerProxyコントロール
コラム目次
XML-Scriptとは
Windows VistaでVisual Studio 2005を使用する
XMLHttpRequestのクロスドメイン制限
pageLoad関数とpageUnload関数
AJAX Control ToolkitのToolkitScriptManagerコントロール
Visual Studio 2008におけるエクステンダの追加方法
Visual Studio 2008とスクリプトドキュメント
ASP.NET AJAXにおけるJSONデータの最大サイズ
$addHandler関数と$addHandlers関数を使用したイベントハンドラの登録
Visual Studio 2008におけるASP.NET AJAXカスタムコンポーネントの作成