[過去ログ] ADO.NETの質問・雑談スレ (981レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
973
(1): 2009/02/01(日)22:27 ID:??? AAS
>>971
それはダメなコーディングで969推奨のは?
974
(2): 2009/02/02(月)00:25 ID:??? AAS
>>973
普通にデータバインドぐらいは使ってくれ、
何でもかんでもLoopとIfで処理しないで、ドトネト利用してくれ。
ついでに横長テーブル作りたがる奴は死ね。
それ以上に書くことなんてあるかいな。

ダメなコーディングの理由を「流用が利く」にする連中が居て、
「他でもそうしている」(もちろん、どんなケースで何故そうしたかはスルー)を
言い訳に使いたがるのが居る。

わざわざ現場でそんな連中に言い訳くれてやんなと。

と、書いてるうちに自分も有害だと思えてきたのでこのままデスマの中で吊ってくる。
975: 2009/02/02(月)04:13 ID:??? AAS
DataReaderは、速度的にはどうなの?
976: 2009/02/02(月)07:35 ID:??? AAS
DataReader は、速度最優先で設計されてるらしい。
だから、データを読む時は一方通行にしか動かせない。

独自でベンチを計ったことは無いが、速度や軽さ優先で
あれば、DataReaderを使うしかないと思う。
977: 2009/02/02(月)20:14 ID:??? AAS
DataReaderは、速度優先で設計されてるものだから、そればかりを優先的に
使う状況もあるかもしれないが、その理由が、「流用が効く」はおかしいと思う。
特に大きな制約が無い状況で、自由に使っていいという状況であれば、
DataTableを使うのがメインになると思うけどな。さらに、Updateは
DataRowの状態を見てSQLコードを生成させる方法とか。
978
(1): 2009/02/02(月)20:50 ID:??? AAS
>>974で触れている、DataReaderを優先的に使いたがる人って、
AccessやVB6でADOをバリバリに使ってた人たちってことでおk?
あれは、こんな感じのソースを書くのが定番になるみたいだし。

' rsはrecordsetのこと
Do Until rs.EOF
' Ifなどの処理
rs.MoveNext
Loop
979: 2009/02/03(火)01:43 ID:??? AAS
using rs as Recordset = cmd.ExecuteReader
while rs.read

end while
end using
980: 2009/02/03(火)03:20 ID:??? AAS
メモリ上にDataTableやDataSetの形で置いとくより、HogeClassのListなり
Dictionaryの形で置いといた方が便利な事が多くない?

フォームへの半自動表示を考えるとDataTableの方が便利な事も
あったかもしれないけど、WPFだとデータテンプレートでその辺どうでも
よくなったし。
981: 974 2009/02/06(金)22:36 ID:??? AAS
>>978
それでおk おかげで、ここ一ヶ月酷い目にあってきたぜ。
赤字になったのは俺のせいじゃねぇ・・・orz

Dim int手数料合計 As Integer
Do Until rs.EOF
 If rs![種別] = DLookup("種別", strSQL, "区分 = 'HH1101'") THEN
   int手数料合計 = DLookup("手数料", strSQL, "区分 = 'HH1101'")
 End If

 '−脳が思い出すのを拒否してるロジック−

rs.MoveNext
省3
1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.009s