MSDNから:
using ステートメントに提供されるオブジェクトは、IDisposable インターフェイスを実装する必要があります。このインターフェイスは、オブジェクトのリソースを解放する Dispose メソッドを提供します。
DataRow
Dispose()
メソッドを提供しません。
これで、 new を追加するときに、オブジェクトのコピーではなく新しい行への参照を実際に格納するDataRow
ため、それを破棄する必要はありません (破棄することもできません) 。Rows.Add
したがって、行を作成して のAdd()
メソッドに渡すだけDataRowCollection
で、新しい行を破棄する必要はありません。
コメントに基づいて:Add()
メソッドに参照を渡すと、参照のコピーがテーブルに格納されます。その後、同じ参照を自由に使用して新しいオブジェクトを作成し、参照を再度保存できます。Dispose()
メソッドは、主に管理されていないリソースを解放するために使用されます。
このメソッドを使用して、このインターフェイスを実装するクラスのインスタンスが保持するファイル、ストリーム、ハンドルなどのアンマネージ リソースを閉じたり解放したりします。慣例により、このメソッドは、オブジェクトが保持するリソースの解放、または再利用のためのオブジェクトの準備に関連するすべてのタスクに使用されます。
オブジェクトが管理されていないリソースを保持していない場合、明示的に解放する必要はありません (C や C++ とは異なり) - オブジェクトを参照できない場合 (そのオブジェクトを指す参照のカウントがゼロになる場合)ガベージ コレクターがそれを処理し、ある時点で (必ずしもすぐにではなく) 自動的に削除します。