ステップ 7 ハンズオン:
ASP.NET 2.0 リッチ データ コントロールによるデータ アクセス ページの実装 その 2
DetailsView コントロールの利用
グローバル ナレッジ ネットワーク株式会社
ナレッジ ソリューション本部 鈴木和久
最終更新日 2005 年 10 月 21 日
目標 | ASP.NET 2.0 のリッチ データ コントロールを利用したデータ アクセス ページの実装 |
使用技術 |
|
取り上げるトピックス |
|
前提知識 | |
目次 |
|
まとめ | ASP.NET 2.0 ではコントロール同士はそれぞれのプロパティを適切に設定するだけで、プログラム コードを記述することなしに、データベースへの基本操作を行うページを作成することができます。 |
備考 | 対象とするデータベースは SQL Server 上の Northwind データベースです。また、このデータベースには日本語用のテーブルとして商品区分テーブルと商品テーブルを作成し、日本語データをあらかじめ入力済みとします。 |
DetailsView コントロールの利用
ここでは、ASP.NET 2.0 DetailsView コントロールを使用して、GridView から選択された項目の詳細なデータの参照、更新を行うページを作成します。 その 1 で紹介した GridView を使用したページを基に DetailsView を使用します。
その 1 で使用した GridView を配置済みのページをデザイン ビューで開きます。
挿入済みのテーブルの 1 行 2 列目にツールボックスの標準タブからラベル コントロールを配置し、Text プロパティを [商品詳細] とします。
2 行 2 列目のセルにツールボックスのデータ タブから DetalsViewt コントロールを配置します。
DetailsView タスク メニューの [データソースの選択] から <新しいデータソース> を選択し、データソース構成ウィザード画面を表示します。
アプリケーションがデータを取得する場所を [データベース] に指定します。
データソースの ID はデフォルトのまま SqlDataSource3 とします。
データベースへの接続を定義する画面では、その 1 の手順で作成済みの Northwind への接続を選択します。
Selectステートメントの構成 画面では GridView で選択した項目の全ての列を DetailsView で表示するため、[商品] テーブルを選択し、全ての列を対象とする [*] をチェックします。
GridView から選択した商品コードに対応する詳細データを表示するために、[WHERE] ボタンをクリックし、[WHERE 句の追加] ダイアログから [商品コード] 列 を選択し、ソースとして Control を選択します。
WHERE 条件を与えるコントロールは GridView コントロールとなるので、パラメータのプロパティのコントロール一覧から GridView を選択し、追加ボタンをクリック後、[OK] ボタンをクリックします。
Select ステートメントの構成 画面から [詳細設定] ボタンをクリックし、SQL 生成詳細オプション ダイアログを表示します。
ここで、[INSERT、 UPDATE、および DELETE ステートメントの生成] と [オプティミスティック同時実行制御]をチェックします。
この設定により、DetailsView からは商品データの参照と追加、更新、削除の操作が可能になります。
オプティミスティック同時実行制御を有効にすると、同じレコードに対する他のプロセスからの変更操作の有無を確認し、現在のデータベースの最新のデータを表示します。
[OK] ボタンをクリックし、Select ステートメントの構成を完了します。
DetailsdView タスク メニューから [挿入を有効にする]、[編集を有効にする]、[削除を有効にする] にチェックすると、DetailsView にはデータ更新用のリンクが表示されます。
これらのリンクをボタンに変更するには、DetailsView タスク メニューの [フィールドの編集] を選択し、選択されたフィールドから [CommandField] を指定して、CommandField プロパティの ButtonType を Link から Button に変更します。
DetailsView タスク メニューの [フィールドの編集] で [選択されたフィールド] 一覧から [単価] 列を選択し、BoundField プロパティから DataFormatString を{0:#} を定義すれば、整数部のみの商品単価の表示ができます。
以上で、GridView で選択した商品に対応した商品の詳細が、DetailsView コントロールから表示され、さらに、データの編集や追加、削除ができるようになります。
次に、『GridView から利用するビジネス オブジェクト』 について説明します。 |
トップページヘ