/// <summary> /// Skips the current column without interpreting its value. /// </summary> public void Skip() { ReadColumnLenIfNeeded(); if (_columnLen != -1) { _buf.Skip(_columnLen); } _columnLen = int.MinValue; _column++; }
protected override void Dispose(bool disposing) { if (_isDisposed || !disposing) { return; } try { if (CanWrite) { Flush(); _writeBuf.EndCopyMode(); _connector.SendMessage(CopyDoneMessage.Instance); _connector.ReadExpecting <CommandCompleteMessage>(); _connector.ReadExpecting <ReadyForQueryMessage>(); } else { if (!_isConsumed) { if (_leftToReadInDataMsg > 0) { _readBuf.Skip(_leftToReadInDataMsg); } _connector.SkipUntil(BackendMessageCode.ReadyForQuery); } } } finally { var connector = _connector; Cleanup(); connector.EndUserAction(); } }