第7回 ASP.NETにおけるデータ更新処理VB6開発者のためのASP.NET開発入門(5/5 ページ)

» 2008年03月28日 00時00分 公開
[宮崎 昭世(Microsoft MVP for ASP/ASP.NET)日立ソフトウェアエンジニアリング]
前のページへ 1|2|3|4|5       

DetailsViewコントロールにおける入力チェック

 DB更新自体は可能となったが、入力チェックはどうすればいいのであろうか? いくつかの方法はあるのだが、ここでは一番基本的な方法について解説する。

 まずDetailsViewコントロールのItemUpdatingイベント・ハンドラを追加しよう。

DetailsViewコントロールで入力をチェックする方法(1)
DetailsViewコントロールのItemUpdatingイベント・ハンドラを追加する。
  (1)DetailsViewコントロールを選択し、[プロパティ]ウィンドウで[イベント]ボタンをクリックする。
  (2)[ItemUpdating]イベントをダブル・クリックすると、イベント・ハンドラが追加される。

 次に、追加されたイベント・ハンドラに次のコードを記述する。

Protected Sub DetailsView1_ItemUpdating(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DetailsViewUpdateEventArgs) Handles DetailsView1.ItemUpdating
  If (e.NewValues("au_lname") = "") Then
    Label1.Text = "著者姓を入力してください"
    e.Cancel = True
  End If
End Sub

DetailsViewコントロールで入力をチェックする方法(2)
入力内容をチェックするコードを追加する。太字になっているコードの1行目で[au_lname]フィールドの内容を取得し、空文字であった場合に、2行目で、Labelコントロールにエラー・メッセージを設定している。また3行目で、更新処理をここで中断するために、Cancelプロパティに「True」を設定している。

 このように、更新処理が行われる直前にItemUpdatingイベントが発生するため、そのイベント・ハンドラでチェックを行うことが可能である。

 実際に実行してみよう。

DetailsViewにおける入力チェック − 実行結果(1)
[au_lname]フィールドの内容を削除し、[更新]リンク・ボタンをクリックする。

DetailsViewにおける入力チェック − 実行結果(2)
エラー・メッセージが表示されることが確認できる。実際に更新処理も中断されており、DBは変更されていない。

 このように、DetailsViewコントロールは手軽に詳細ページや更新ページを作成でき、入力チェック処理の追加といったカスタマイズも容易であるため、うまく利用してほしい。


 前回と今回にわたってASP.NETでのDBアクセスについて見てきた。非常に簡単に基本的な機能を実装できることが確認いただけたのではないだろうか?

 ただし、DBサーバに対してどのようなクエリが投げられているのかについて意識しておかないと、いろいろ問題が起こる可能性はあることについては注意して利用してほしい。

 7回にわたって解説を行ってきたわけであるが、ASP.NETで業務アプリケーションを作るための基礎を、特にVB6開発者がつまずきやすいポイントを中心として解説してきたつもりである。ASP.NETには、まだまだ多くの便利な機能がある。本連載の内容を理解し、さらに便利な機能を使いこなし、より効率的に業務アプリを開発できるようになってほしい。

「  VB6開発者のためのASP.NET開発入門 」のインデックス

  VB6開発者のためのASP.NET開発入門 

前のページへ 1|2|3|4|5       

Copyright© Digital Advantage Corp. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。