- 締切済み
C#でのデータセットを使用したDBアクセス
はじめまして。 データセットを使用したDBアクセスの実装では SqlDataAdapter da = new SqlDataAdapter(strsql,stConnectionString); DataSet ds = new DataSet(); …(1) da.Fill(ds); …(2) としますが(1)と(2)を合わせて DataSet ds = da.Fill(); とはできません。 インスタンス作成の際はオブジェクトによっては「=」でつないで作成するのがあると 思いますが、データセット使用の際にはできないのは、使用するオブジェクトによって 定義の記述が違うという認識を持っておけば良いのでしょうか? 「=」を使用せず、da.Fill(ds)で記述することに違和感があります。 よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- wormhole
- ベストアンサー率28% (1626/5665)
回答No.1
何をどうしたら(1)と(2)を合わせると >DataSet ds = da.Fill(); になるという事を思われたのでしょうか。 どうやっても da.Fill(new DataSet()); にしかなりません。 SqlDataAdapterのFillメソッドはDataSetのインスタンスを生成するメソッドではありませんし。 ライブラリリファレンス読まれてますか? >インスタンス作成の際はオブジェクトによっては「=」でつないで作成するのがあると >思いますが、データセット使用の際にはできないのは、使用するオブジェクトによって >定義の記述が違うという認識を持っておけば良いのでしょうか? インスタンスの生成に=演算子は関係ありませんが・・・ そもそもの認識が間違ってそうに見受けられますけど。
お礼
お世話になります。 ライブラリの確認不足申し訳ないです。 Fillメソッドをライブラリで見るとデータセットの追加・更新の行数を返り値とするとあります。 また引数はDataSetと記述があります。 da.fill(ds)を実行することで、返り値として行数は返しますが引数にしているdsが メソッド実行することで、どういうふうになるのかイメージしづらかったので このような質問をさせてもらいました。 もう少し自分で考えてみます。