データバインド

Data Binding Data Binding *
*前のトピック: フォントの埋め込み
*次のトピック: データバインド アーキテクチャ

データバインド

Microsoft® Internet Explorer 4.0の登場により、コンテント プロバイダは、組み込まれているデータバインディング機能を使って読み書きを行える、データ中心のWebアプリケーションを開発できるようになった。HTML拡張や組み込み可能なデータソースオブジェクトを使えば、データドリブンなページでも最小限のスクリプトで簡単に作成できる。クライアント側非同期にデータがダウンロードされるので、ページは即座に表示され、反応が早くなる。一度データをダウンロードしてしまえば、サーバーとのやり取りなしに、データの並び替えやフィルタが適用できる。これを、従来の単純なWebページやサーバーサイドのスクリプトで生成されるWebページと比較してみよう。これらのWebページでは一度クライアントにデータを送ってしまうと、そのWebページは静的であり、何か処理する場合はサーバーへの別の要求が必要となる。

Webページでデータベース処理を行いたい場合、最適な解決法としては、HTMLドキュメントの外部にそのデータを(CSVファイルなどの、各レコードごとに区切られたテキストファイルとして)格納しておくことだ。これで、データの変更は、そのデータベース内のデータだけを変更すればよく、このWebページだけでなく他のページでも、その変更が反映される。

こうしたメンテナンスの問題からデータバインドを静的ページで使うことは合理的なのだが、もっと複雑な問題についても考えなくてはならない。サーバー上で管理するリレーショナル データベース(たとえば、オンライン上で公開するクラシック音楽のカタログ)を例として考えてみよう。 CGI(Common Gateway Interface)、ISAPI(Internet Server API)、ASP(Active Server Pages)など、最近のサーバーサイド テクノロジーを使うことにより、デベロッパーは、クライアントからの指示に基づいてデータのサブセット(例えば、ある作曲家による全タイトル)を取り出すスクリプトを記述することができる。このスクリプトを使って、テーブル形式で、タイトル、作曲年、形式、楽章の一式が含まれているWebページを作成し、クライアントに返すことができる。そのページの情報はデータの順番で表示されるが、ユーザーが曲名をアルファベット順に表示したり、交響曲やフーガといった条件に当てはまるデータだけを表示したい場合、ユーザーはサーバーへの追加リクエストが必要となる。この方法では、同じデータでありながら表示方法だけが少し違うデータを表示する場合には効率がよくない。もし、Webオーサーが曲ごとに1つのレコード(すなわち、1ページにつき1レコード)に表示すると決めたなら、この問題はさらに複雑になる。全レコードを取得するには、サーバーへ何回もアクセスしなくてはならない。

ユーザーにデータの追加や更新を許可したい場合、通常、WebオーサーはHTMLフォームを作成しておき、サーバーにGET/POSTリクエストを送信させる。サーバーアプリケーションでは、HTTPデータ ストリームによるデータを解析し、データベースにそのデータを記録する。更新要求のたびに、その送信ボタンがあるページとそのフォームデータがリロードされることになる。これでは、ユーザーはシームレスな作業が行えない。

これらの問題を解決するには、データバインドで提供される様々なコンポーネントが役立つ。また、それらを使うとWeb上での作業を効率的に行える。使用方法については、次に示すセクションで説明しているので参照すること。

arrowr.gifデータバインド アーキテクチャ

arrowr.gifページへのデータソースオブジェクトの追加

arrowr.gifデータへのHTMLエレメントのバインド

arrowr.gifデータバインドをサポートするDHTMLオブジェクトモデル

arrowr.gifデータバインドをサポートするDHTMLイベントモデル

Microsoft Tabular Data Control (TDC)

Microsoft Remote Data Service (以前のADC)

Up トップに戻る
© 1997 Microsoft Corporation. All rights reserved. Terms of Use.