internal NpgsqlDataReader Execute(CommandBehavior behavior = CommandBehavior.Default) { State = CommandState.InProgress; try { _queryIndex = 0; _connector.SendAllMessages(); if (!IsPrepared) { IBackendMessage msg; do { msg = _connector.ReadSingleMessage(); } while (!ProcessMessageForUnprepared(msg, behavior)); } var reader = new NpgsqlDataReader(this, behavior, _queries); reader.Init(); _connector.CurrentReader = reader; return(reader); } catch { State = CommandState.Idle; throw; } }
internal NpgsqlDataReader Execute(CommandBehavior behavior = CommandBehavior.Default) { LogCommand(); State = CommandState.InProgress; try { _queryIndex = 0; _connector.SendAllMessages(); // We consume response messages, positioning ourselves before the response of the first // Execute. if (IsPrepared) { if ((behavior & CommandBehavior.SchemaOnly) == 0) { // No binding in SchemaOnly mode var msg = _connector.ReadSingleMessage(DataRowLoadingMode.NonSequential); Contract.Assert(msg is BindCompleteMessage); } } else { IBackendMessage msg; do { msg = _connector.ReadSingleMessage(); } while (!ProcessMessageForUnprepared(msg, behavior)); } var reader = new NpgsqlDataReader(this, behavior, _queries); reader.Init(); _connector.CurrentReader = reader; return(reader); } catch { State = CommandState.Idle; throw; } }
internal NpgsqlDataReader Execute(CommandBehavior behavior = CommandBehavior.Default) { State = CommandState.InProgress; try { _queryIndex = 0; _connector.SendAllMessages(); if (!IsPrepared) { IBackendMessage msg; do { msg = _connector.ReadSingleMessage(); } while (!ProcessMessageForUnprepared(msg, behavior)); } var reader = new NpgsqlDataReader(this, behavior, _queries); reader.Init(); _connector.CurrentReader = reader; return reader; } catch { State = CommandState.Idle; throw; } }
internal NpgsqlDataReader Execute(CommandBehavior behavior = CommandBehavior.Default) { LogCommand(); State = CommandState.InProgress; try { _queryIndex = 0; _connector.SendAllMessages(); // We consume response messages, positioning ourselves before the response of the first // Execute. if (IsPrepared) { if ((behavior & CommandBehavior.SchemaOnly) == 0) { // No binding in SchemaOnly mode var msg = _connector.ReadSingleMessage(DataRowLoadingMode.NonSequential); Contract.Assert(msg is BindCompleteMessage); } } else { IBackendMessage msg; do { msg = _connector.ReadSingleMessage(); } while (!ProcessMessageForUnprepared(msg, behavior)); } var reader = new NpgsqlDataReader(this, behavior, _queries); reader.Init(); _connector.CurrentReader = reader; return reader; } catch { State = CommandState.Idle; throw; } }