C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

■92267 / 親階層)  データセットのレコード値変更
□投稿者/ あめ (1回)-(2019/09/06(Fri) 13:11:53)

分類:[.NET 全般] 

vb.netで学習をしています。

名簿入力リストのアプリケーションを作り、保存ボタンを押したときに
テキストコントロールの内容をデータセットのデータテーブルにレコード追加するようにしたいのですが、
新規作成と変更のモードを作ろうと思っています。
どちらの場合でもテキストコントロールの内容を元にするので、
同じような処理はまとめて違う処理だけ分けたいのですが、

Dim sleRowNo As Integer
If EditMode = ADD Then '--- 新規モード ---
'データセットにレコードを追加
Dim drw As DataRow = ds.Tables("Meibo").NewRow
ds.Tables("Meibo").Rows.Add(drw)
sleRowNo = ds.Tables("Meibo").Rows.Count - 1
Else '--- 変更モード ---
Dim sleRow As DataRow()
'該当レコード番号を取得
sleRow = ds.Tables("Meibo").Select("Sei = '" & TextBoxSei.Text & "'")
sleRowNo = ds.Tables("Meibo").Rows.IndexOf(sleRow(0))
End If

With ds.Tables("Meibo").Rows(sleRowNo)
.Item("Sei") = TextBoxSei.Text
.Item("Mei") = TextBoxMei.Text
.Item("Age") = TextBoxAge.Text
.Item("Seibetu") = TextBoxSeibetu.Text
End With

今思いついているのは、新規作成ならまずレコードを追加、変更なら指定レコードのインデックスを取得してから
値をセットしていくという方法なのですが、これがベストなのか他にもっと良い方法があるのかがわかりません。
そもそもこの方法が上手くいくのかもわかりません。
どなたかアドバイスをお願いします。
編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
親記事 →Re[1]: データセットのレコード値変更 /shu
→Re[1]: データセットのレコード値変更 /WebSurfer
→Re[1]: データセットのレコード値変更 /大谷刑部
 
上記関連ツリー

データセットのレコード値変更 / あめ (19/09/06(Fri) 13:11) #92267 ←Now
Re[1]: データセットのレコード値変更 / shu (19/09/07(Sat) 07:13) #92279
Re[1]: データセットのレコード値変更 / WebSurfer (19/09/07(Sat) 10:11) #92280
Re[1]: データセットのレコード値変更 / 大谷刑部 (19/09/10(Tue) 11:34) #92297

上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信