3

IDbConnection オブジェクトを using ブロックでラップすると、Dispose が確実に呼び出され、使用しているリソースが解放されることを理解しています。そうは言っても、ブロックを使用してIDbCommandとIDataReaderをラップする必要があるか、接続オブジェクトをラップするだけで十分です。ありがとう。

4

2 に答える 2

2

ドキュメントを参照せずに、特定のオブジェクトについてこれに対する答えを見つける簡単な方法がいくつかあります。

  1. usingブロックで囲み、それが ではないIDisposable場合、構文エラーが発生します。
  2. クラスに.Disposeメソッドがある場合 (Intellisense で簡単にチェックできる)、それをラップする必要があります。
  3. クラスが実装している場合IDisposable(「定義に移動」または VS の新しい「ピーク」機能で簡単に確認できます)、それをラップする必要があります。

または、例として、ブロックを実装しているため、ブロックで破棄する必要があるMSDN ドキュメントから確認できます。IDbCommandIDisposableusing

于 2014-01-29T17:16:11.513 に答える