■58966 / ) |
Re[2]: OleDb接続時のハンドル定義の方法 |
□投稿者/ エル (2回)-(2011/05/06(Fri) 18:18:13)
|
■No58947 (ピートモス さん) に返信 > OleDbConnectionではOpenしたら最後はCloseする必要がありますが、 > Usingを使えば、Usingを抜けると自動的にCloseメソッドが実行されます。 > このため、OleDbConnectionがUsingで使われているのは、明示的にClose()を > コード上に書かなくてもコネクションのクローズが実行されることを期待しているのでしょう。 > > 処理が終わったら確実にCloseしたい場合(例えばファイルやメモリのストリームなど)には、 > Usingを使うのが確実でしょうし(1.xでtry-catch-finallyを行う代わりとして)、 > それ以外のIDisposableなクラスで、処理が終わったらリソースの解放を明示的に行いたい場合は、 > Usingを使えばいいのではないでしょうか?
ピートモスさんお返事ありがとうございます。 Usingは、Usingを抜けると自動的にCloseメソッドが実行される、とても便利で 高機能な機能であると考えています。 msdnのサンプルコード↓でもOleDbConnectionにはUsingを使用しています。 http://msdn.microsoft.com/ja-jp/library/system.data.oledb.oledbdatareader(v=vs.80).aspx しかし、同じ事がOleDbDataReaderでも言えるのですが、 このmsdnのサンプルコードでは、OleDbDataReaderではUsingを使用せずDim−Closeで 記述しています。Closeコマンドを記述しています。
msdnのサンプルコードではOleDbConnectionではUsingを使い、OleDbDataReaderでは、 Dim−Closeを使い、使い分けているのです。この使い分けている理由と、Usingと Dim−Closeの使い分けの方法を理解できたらと考えています。msdnのサンプルコード がOleDbConnection、OleDbCommandとOleDbDataReaderの3つ全てでUsingを使っていれ ば納得するのですが、使い分けています。msdnが使い分けているのに理由があると思 うのです。使い分け方の基準をご指導頂けるとありがたいです。よろしくお願いします。
|
|