System.Data.DataTableReader.NextResult C# (CSharp) Method

NextResult() public method

public NextResult ( ) : bool
return bool
        public override bool NextResult()
        {
            // next result set; reset everything
            ValidateOpen(nameof(NextResult));

            if ((_tableCounter == _tables.Length - 1))
            {
                return false;
            }

            _currentDataTable = _tables[++_tableCounter];

            if (_listener != null)
            {
                _listener.UpdataTable(_currentDataTable); // it will unsubscribe from preveous tables events and subscribe to new table's events
            }

            _schemaTable = null;
            _rowCounter = -1;
            _currentRowRemoved = false;
            _reachEORows = false;
            _schemaIsChanged = false;
            _started = false;
            ReaderIsInvalid = false;
            _tableCleared = false;

            _hasRows = (_currentDataTable.Rows.Count > 0);

            return true;
        }

Usage Example

Exemplo n.º 1
0
 public void MultipleResultSetsTest ()
 {
         DataTable dt1 = new DataTable ("test2");
         dt1.Columns.Add ("x", typeof (string));
         dt1.Rows.Add (new object [] {"test"} );
         dt1.Rows.Add (new object [] {"test1"} );
         dt1.AcceptChanges ();
         
         DataTable [] collection = new DataTable [] { dt, dt1 } ; 
         
         DataTableReader reader = new DataTableReader (collection);
         try {
                 int i = 0;
                 do {
                         while (reader.Read ())
                                 i++;
                 } while (reader.NextResult ());
                                 
                 Assert.AreEqual (5, i, "#1 rows should be of both the tables");
         } finally {
                 if (reader != null && !reader.IsClosed)
                         reader.Close ();
         }
 }
All Usage Examples Of System.Data.DataTableReader::NextResult