Beispiel #1
0
 /// <summary>
 /// Skips the current column without interpreting its value.
 /// </summary>
 public void Skip()
 {
     ReadColumnLenIfNeeded();
     if (_columnLen != -1)
     {
         _buf.Skip(_columnLen);
     }
     _columnLen = int.MinValue;
     _column++;
 }
Beispiel #2
0
        protected override void Dispose(bool disposing)
        {
            if (_isDisposed || !disposing)
            {
                return;
            }

            if (CanWrite)
            {
                Flush();
                _connector.SendSingleMessage(CopyDoneMessage.Instance);
                _connector.ReadExpecting <CommandCompleteMessage>();
                _connector.ReadExpecting <ReadyForQueryMessage>();
            }
            else
            {
                if (!_isConsumed)
                {
                    _buf.Skip(_leftToReadInDataMsg);
                    _connector.SkipUntil(BackendMessageCode.ReadyForQuery);
                }
            }

            _connector.EndUserAction();
            _connector  = null;
            _buf        = null;
            _isDisposed = true;
        }