電気ウナギ的○○

About Home

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

shinoda (2014年9月11日 00:52)
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

これでええんやな。

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

電気ウナギ的○○

電気ウナギ的○○

About Back

コメント(0)

電気ウナギ的○○

電気ウナギ的○○

About Back

トラックバック(0)

トラックバックURL: https://blog.netandfield.com/mt/mt-tb.cgi/3099

電気ウナギ的○○

About This Site

電気ウナギ的○○
岩国在住。広島で働く超零細IT企業社長のいわゆる社長日記。
何か、酒と食い物のことばかり書いているようで・・・お察しのとおり、肥満体です:-)


2011/06/24
iPhone用サイト公開

Create with jQuery, jQTouch.


CLOSE