System.Data.SqlClient.TdsParser.Run C# (CSharp) Method

Run() private method

private Run ( RunBehavior runBehavior, SqlCommand cmdHandler, System.Data.SqlClient.SqlDataReader dataStream, System.Data.SqlClient.BulkCopySimpleResultSet bulkCopyHandler, System.Data.SqlClient.TdsParserStateObject stateObj ) : bool
runBehavior RunBehavior
cmdHandler SqlCommand
dataStream System.Data.SqlClient.SqlDataReader
bulkCopyHandler System.Data.SqlClient.BulkCopySimpleResultSet
stateObj System.Data.SqlClient.TdsParserStateObject
return bool
        internal bool Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
        {
            bool syncOverAsync = stateObj._syncOverAsync;
            try
            {
                stateObj._syncOverAsync = true;

                bool dataReady;
                bool result = TryRun(runBehavior, cmdHandler, dataStream, bulkCopyHandler, stateObj, out dataReady);
                Debug.Assert(result == true, "Should never return false when _syncOverAsync is set");
                return dataReady;
            }
            finally
            {
                stateObj._syncOverAsync = syncOverAsync;
            }
        }

Usage Example

 private void RestoreServerSettings(TdsParser parser, TdsParserStateObject stateObj)
 {
     if ((parser != null) && (this._resetOptionsString != null))
     {
         if (parser.State == TdsParserState.OpenLoggedIn)
         {
             parser.TdsExecuteSQLBatch(this._resetOptionsString, (this._command != null) ? this._command.CommandTimeout : 0, null, stateObj);
             parser.Run(RunBehavior.UntilDone, this._command, this, null, stateObj);
         }
         this._resetOptionsString = null;
     }
 }
TdsParser