0

基本的に私が今やっていることは次のとおりです。

初期化中

  • 接続を作成して保存する
  • 保存された接続を使用して DbDataAdapters とそのコマンドを作成する
  • 各アダプターに対して DbDataAdapter.Fill を呼び出して、データベースから DataTables を設定します。

リクエストを処理するとき

  • DataTables の行の挿入/更新/削除
  • ある時点で DbDataAdapter.Update を呼び出します。毎回である必要はありません (更新は当然アダプタのコマンドの接続を使用します)

これは正しい方法ですか、それともリクエストが到着したときに常に新しい接続を作成し、DbDataAdapter.Update を呼び出す前に DbDataAdapter.Insert/Update/DeleteCommand.Connection に割り当てる必要がありますか? ネットワーク/サーバーの問題の後にデータベースに再接続するなどの問題について考えています。

ありがとう & BR -マティ

4

1 に答える 1

0

あなたは Web サービスに言及しているので、並行性について考えてください。サーバー側で 2 つ以上の同時リクエストが処理されるとどうなるでしょうか。

同じ接続で大丈夫ですか?同じものを使っても大丈夫DataAdapterですか?最も可能性の高い答えは、そうではありません。おそらく機能しないでしょう。

したがって、最も安全な方法は、リクエストごとに新しい接続と新しいデータ アダプタを作成することです。

接続はプールされるため、「再接続」に問題はありません。プールは接続を提供し、ハンドシェイクはおそらく以前に実行されました。その場合、パフォーマンス ヒットはありません。

于 2012-02-09T13:37:32.613 に答える