だって、VB.NET で DataSet とか触るの初めてだったんだもの

VB.NET はちょっとしたツール(定例処理で使う超シンプルな FTP クライアントとか)を作るのに使ってたので(ちいさなプログラムでも、それなりに内部的にはややこしいことをしてたしな)、コーディング自体は問題なかったのだが、実は DB がらみのプログラムは全然書いたことがなかった。
なので、DB のデータを DataSet にセットして云々かんぬんなんてやったことなかったわけよ(^^;

なので、7月、8月に作ったプログラムって、無駄なことしてるわあ(^^;

ある DataSet の中身を並び替えて DataGridView にセットするんだけど、

' 並び替えのため DataSet を View にセット
Dim hogeDv As DataView = hogeDs.t_hoge.DefaultView

' 並びかえ(あのコード1、この日付1)
hogeDv.Sort = "ano_code1, kono_date1"

' 並び替えを行った View を新しい DataSet にコピー
Dim newDs As New HogeDataSet
For Each drv As DataRowView In hogeDv
    Dim dr As HogeDataSet.t_hogeRow = CType(drv.Row, HogeDataSet.t_hogeRow)
    Dim ndr As HogeDataSet.t_hogeRow = newDs.t_hoge.Newt_hogeRow
    ndr.ItemArray = dr.ItemArray
    newDs.t_hoge.Addt_hogeRow(ndr)
Next
' 更新の反映
newDs.AcceptChanges()

Me.HogeBindingSource.DataMember = newDs.t_hoge.TableName
Me.HogeBindingSource.DataSource = ds

みたいに、わざわざ View の内容を新しい DataSet にセットしてから BindingSource にバインドしてたけど、そんなことする必要なかったんやなあ。
別に View のままで突っ込めたんや。
この頃は、DataSet がらみのクラスのプロパティの内容とかあまり理解してなかったからなあ(^^;

実際は、

' 並び替えのため DataSet を View にセット
Dim hogeDv As DataView = hogeDs.t_hoge.DefaultView

' 並びかえ(あのコード1、この日付1)
hogeDv.Sort = "ano_code1, kono_date1"

Me.HogeBindingSource.DataMember = hogeDv.Table.TableName
Me.HogeBindingSource.DataSource = hogeDv

これでええんやな。

恥ずかしいから、過去のコードもこっそり直しとかないと(^^;(まあ、なんの問題もなく動いてるので、そんなにじっくりソースを見られちゃうこともないだろうけど)

トラックバック(0)

このブログ記事を参照しているブログ一覧: だって、VB.NET で DataSet とか触るの初めてだったんだもの

このブログ記事に対するトラックバックURL: https://blog.netandfield.com/mt/mt-tb.cgi/3099

コメントする

このブログ記事について

このページは、shinodaが2014年9月11日 00:52に書いたブログ記事です。

ひとつ前のブログ記事は「WoT にて「トップガン」の称号を手に入れた」です。

次のブログ記事は「あかん・・・プリンタがもう限界や・・・」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。


月別 アーカイブ

電気ウナギ的○○ mobile ver.

携帯版「電気ウナギ的○○」はこちら