c# - Using statement doesn't seem to dispose my object -


i'm having trouble. have sqlcommand in using block. works fine. time however, code exits using block command not disposed. has me stumped.

using (sqlcommand transfercommand = new sqlcommand(strheaderstoredprocedure, connection)) {     transfercommand.commandtype = system.data.commandtype.storedprocedure;     transfercommand.parameters.add("@invttransferid", sqldbtype.uniqueidentifier).value = invttransferid;     sqldatareader transferreader = transfercommand.executereader();     while (transferreader.read())     {         //do stuff, works fine     } }   using (sqlcommand transfercommand = new sqlcommand(strdetailsstoredprocedure, connection)) {     transfercommand.commandtype = system.data.commandtype.storedprocedure;     transfercommand.parameters.add("@invttransferid",     sqldbtype.uniqueidentifier).value = invttransferid;     sqldatareader transferreader = transfercommand.executereader(); <-- error happens here. } 

i'm trying reuse connection run bunch of stored procedures. strangest thing. have code on form virtually identical , runs fine, disposing command , allowing me make another. ideas i'm doing wrong? (i'm trying make code nice in post seems beyond meager power...so sorry messy code.)

error is: there open datareader associated command must closed first.

what have open sqldatareader (transferreader), close , dispose datareader or use using() it.

i assume command not being released because reader still open.


Comments

Popular posts from this blog

php - render data via PDO::FETCH_FUNC vs loop -

c++ - OpenCV Error: Assertion failed <scn == 3 ::scn == 4> in unknown function, -

The canvas has been tainted by cross-origin data in chrome only -