@@ -162,17 +162,20 @@ internal System.Data.Common.DbCommand GetCommand(string commandText, CommandType
162162 {
163163 System . Data . Common . DbCommand dbCommand ;
164164
165- if ( _dbCommands . TryPop ( out dbCommand ) )
165+ if ( Constants . DbProvider == DbProvider . ODBC )
166166 {
167- if ( commandText != dbCommand . CommandText )
167+ if ( _dbCommands . TryPop ( out dbCommand ) )
168168 {
169- dbCommand . CommandText = commandText ;
170- dbCommand . Parameters . Clear ( ) ;
171- }
169+ if ( commandText != dbCommand . CommandText )
170+ {
171+ dbCommand . CommandText = commandText ;
172+ dbCommand . Parameters . Clear ( ) ;
173+ }
172174
173- return dbCommand ;
175+ return dbCommand ;
176+ }
177+ else if ( _keyed && _keyedDbCommands . TryGetValue ( commandText , out dbCommand ) ) return dbCommand ;
174178 }
175- else if ( _keyed && _keyedDbCommands . TryGetValue ( commandText , out dbCommand ) ) return dbCommand ;
176179
177180 dbCommand = _dbConnection . CreateCommand ( ) ;
178181 dbCommand . CommandText = commandText ;
@@ -184,8 +187,11 @@ internal System.Data.Common.DbCommand GetCommand(string commandText, CommandType
184187
185188 internal void Release ( System . Data . Common . DbCommand dbCommand )
186189 {
187- if ( _keyed ) _keyedDbCommands . TryAdd ( dbCommand . CommandText , dbCommand ) ;
188- else _dbCommands . Push ( dbCommand ) ;
190+ if ( Constants . DbProvider == DbProvider . ODBC )
191+ {
192+ if ( _keyed ) _keyedDbCommands . TryAdd ( dbCommand . CommandText , dbCommand ) ;
193+ else _dbCommands . Push ( dbCommand ) ;
194+ }
189195 }
190196 }
191197}
0 commit comments