Class IgniteDbDataReader
Reads a forward-only stream of rows from an Ignite result set.
public sealed class IgniteDbDataReader : DbDataReader, IEnumerable, IDataReader, IDataRecord, IDisposable, IAsyncDisposable, IDbColumnSchemaGenerator
- Inheritance
-
IgniteDbDataReader
- Implements
- Inherited Members
Properties
Depth
Gets a value indicating the depth of nesting for the current row. Always zero in Ignite.
public override int Depth { get; }
Property Value
- int
The level of nesting.
FieldCount
When overridden in a derived class, gets the number of columns in the current row.
public override int FieldCount { get; }
Property Value
- int
The number of columns in the current row.
Exceptions
- NotSupportedException
There is no current connection to an instance of SQL Server.
HasRows
When overridden in a derived class, gets a value that indicates whether this DbDataReader contains one or more rows.
public override bool HasRows { get; }
Property Value
- bool
true if the DbDataReader contains one or more rows; otherwise, false.
IsClosed
When overridden in a derived class, gets a value indicating whether the DbDataReader is closed.
public override bool IsClosed { get; }
Property Value
- bool
true if the DbDataReader is closed; otherwise, false.
Exceptions
- InvalidOperationException
The DbDataReader is closed.
this[int]
When overridden in a derived class, gets the value of the specified column as an instance of object.
public override object this[int ordinal] { get; }
Parameters
ordinal
intThe zero-based column ordinal.
Property Value
- object
The value of the specified column.
Exceptions
- IndexOutOfRangeException
The column index is out of range.
this[string]
When overridden in a derived class, gets the value of the specified column as an instance of object.
public override object this[string name] { get; }
Parameters
name
stringThe name of the column.
Property Value
- object
The value of the specified column.
Exceptions
- IndexOutOfRangeException
No column with the specified name was found.
Metadata
Gets Ignite-specific result set metadata.
public IResultSetMetadata Metadata { get; }
Property Value
RecordsAffected
When overridden in a derived class, gets the number of rows changed, inserted, or deleted by execution of the SQL statement.
public override int RecordsAffected { get; }
Property Value
- int
The number of rows changed, inserted, or deleted. -1 for SELECT statements; 0 if no rows were affected or the statement failed.
Methods
Close()
Closes the DbDataReader object.
public override void Close()
CloseAsync()
Asynchronously closes the DbDataReader object.
public override Task CloseAsync()
Returns
- Task
A task representing the asynchronous operation.
Dispose(bool)
Releases the unmanaged resources used by the DbDataReader and optionally releases the managed resources.
protected override void Dispose(bool disposing)
Parameters
disposing
booltrue to release managed and unmanaged resources; false to release only unmanaged resources.
DisposeAsync()
Asynchronously releases all resources used by the current instance of the DbDataReader class.
public override ValueTask DisposeAsync()
Returns
GetBoolean(int)
When overridden in a derived class, gets the value of the specified column as a Boolean.
public override bool GetBoolean(int ordinal)
Parameters
ordinal
intThe zero-based column ordinal.
Returns
- bool
The value of the specified column.
Exceptions
- IndexOutOfRangeException
The column index is out of range.
- InvalidCastException
The specified cast is not valid.
GetByte(int)
When overridden in a derived class, gets the value of the specified column as a byte.
public override byte GetByte(int ordinal)
Parameters
ordinal
intThe zero-based column ordinal.
Returns
- byte
The value of the specified column.
Exceptions
- IndexOutOfRangeException
The column index is out of range.
- InvalidCastException
The specified cast is not valid.
GetBytes(int, long, byte[]?, int, int)
When overridden in a derived class, reads a specified number of bytes from the specified column starting at a specified index and writes them to a buffer starting at a specified position in the buffer.
public override long GetBytes(int ordinal, long dataOffset, byte[]? buffer, int bufferOffset, int length)
Parameters
ordinal
intThe zero-based column ordinal.
dataOffset
longThe index within the row from which to begin the read operation.
buffer
byte[]The buffer into which to copy the data.
bufferOffset
intThe index with the buffer to which the data will be copied.
length
intThe maximum number of bytes to read.
Returns
- long
The actual number of bytes read.
Exceptions
- IndexOutOfRangeException
The column index is out of range.
- InvalidCastException
The specified cast is not valid.
GetChar(int)
When overridden in a derived class, gets the value of the specified column as a single character.
public override char GetChar(int ordinal)
Parameters
ordinal
intThe zero-based column ordinal.
Returns
- char
The value of the specified column.
Exceptions
- IndexOutOfRangeException
The column index is out of range.
- InvalidCastException
The specified cast is not valid.
GetChars(int, long, char[]?, int, int)
When overridden in a derived class, reads a specified number of characters from a specified column starting at a specified index, and writes them to a buffer starting at a specified position.
public override long GetChars(int ordinal, long dataOffset, char[]? buffer, int bufferOffset, int length)
Parameters
ordinal
intThe zero-based column ordinal.
dataOffset
longThe index within the row from which to begin the read operation.
buffer
char[]The buffer into which to copy the data.
bufferOffset
intThe index with the buffer to which the data will be copied.
length
intThe maximum number of characters to read.
Returns
- long
The actual number of characters read.
GetColumnSchema()
Gets the column schema (DbColumn collection).
public ReadOnlyCollection<DbColumn> GetColumnSchema()
Returns
- ReadOnlyCollection<DbColumn>
The column schema (DbColumn collection).
GetDataTypeName(int)
When overridden in a derived class, gets name of the data type of the specified column.
public override string GetDataTypeName(int ordinal)
Parameters
ordinal
intThe zero-based column ordinal.
Returns
- string
The name of the data type.
Exceptions
- IndexOutOfRangeException
The column index is out of range.
GetDateTime(int)
When overridden in a derived class, gets the value of the specified column as a DateTime object.
public override DateTime GetDateTime(int ordinal)
Parameters
ordinal
intThe zero-based column ordinal.
Returns
- DateTime
The value of the specified column.
Exceptions
- IndexOutOfRangeException
The column index is out of range.
- InvalidCastException
The specified cast is not valid.
GetDecimal(int)
When overridden in a derived class, gets the value of the specified column as a decimal.
public override decimal GetDecimal(int ordinal)
Parameters
ordinal
intThe zero-based column ordinal.
Returns
- decimal
The value of the specified column.
Exceptions
- IndexOutOfRangeException
The column index is out of range.
- InvalidCastException
The specified cast is not valid.
GetDouble(int)
When overridden in a derived class, gets the value of the specified column as a double-precision floating point number.
public override double GetDouble(int ordinal)
Parameters
ordinal
intThe zero-based column ordinal.
Returns
- double
The value of the specified column.
Exceptions
- InvalidCastException
The specified cast is not valid.
GetEnumerator()
When overridden in a derived class, returns an enumerator that can be used to iterate through the rows in the data reader.
public override IEnumerator GetEnumerator()
Returns
- IEnumerator
An enumerator that can be used to iterate through the rows in the data reader.
GetFieldType(int)
When overridden in a derived class, gets the data type of the specified column.
public override Type GetFieldType(int ordinal)
Parameters
ordinal
intThe zero-based column ordinal.
Returns
- Type
The data type of the specified column.
Exceptions
- IndexOutOfRangeException
The column index is out of range.
- InvalidCastException
The specified cast is not valid.
GetFieldValue<T>(int)
Gets the value of the specified column as the requested type.
public override T GetFieldValue<T>(int ordinal)
Parameters
ordinal
intThe zero-based column ordinal.
Returns
- T
The value of the specified column.
Type Parameters
T
The type of the value to be returned.
Exceptions
- InvalidOperationException
The connection was dropped or closed during data retrieval.
-or-
The data reader was closed during data retrieval.
-or-
There is no data ready to be read (for example, the first Read() hasn't been called, or it returned false).
-or-
The reader tried to read a previously-read column in sequential mode.
-or-
There was an asynchronous operation in progress. This applies to all Get* methods when running in sequential mode, as they could be called while reading a stream.
- IndexOutOfRangeException
The column index is out of range.
- InvalidCastException
The value returned by the database doesn't match or cannot be cast to
T
.
GetFloat(int)
When overridden in a derived class, gets the value of the specified column as a single-precision floating point number.
public override float GetFloat(int ordinal)
Parameters
ordinal
intThe zero-based column ordinal.
Returns
- float
The value of the specified column.
Exceptions
- IndexOutOfRangeException
The column index is out of range.
- InvalidCastException
The specified cast is not valid.
GetGuid(int)
When overridden in a derived class, gets the value of the specified column as a globally unique identifier (GUID).
public override Guid GetGuid(int ordinal)
Parameters
ordinal
intThe zero-based column ordinal.
Returns
- Guid
The value of the specified column.
Exceptions
- IndexOutOfRangeException
The column index is out of range.
- InvalidCastException
The specified cast is not valid.
GetInt16(int)
When overridden in a derived class, gets the value of the specified column as a 16-bit signed integer.
public override short GetInt16(int ordinal)
Parameters
ordinal
intThe zero-based column ordinal.
Returns
- short
The value of the specified column.
Exceptions
- IndexOutOfRangeException
The column index is out of range.
- InvalidCastException
The specified cast is not valid.
GetInt32(int)
When overridden in a derived class, gets the value of the specified column as a 32-bit signed integer.
public override int GetInt32(int ordinal)
Parameters
ordinal
intThe zero-based column ordinal.
Returns
- int
The value of the specified column.
Exceptions
- IndexOutOfRangeException
The column index is out of range.
- InvalidCastException
The specified cast is not valid.
GetInt64(int)
When overridden in a derived class, gets the value of the specified column as a 64-bit signed integer.
public override long GetInt64(int ordinal)
Parameters
ordinal
intThe zero-based column ordinal.
Returns
- long
The value of the specified column.
Exceptions
- IndexOutOfRangeException
The column index is out of range.
- InvalidCastException
The specified cast is not valid.
GetName(int)
When overridden in a derived class, gets the name of the column, given the zero-based column ordinal.
public override string GetName(int ordinal)
Parameters
ordinal
intThe zero-based column ordinal.
Returns
- string
The name of the specified column.
GetOrdinal(string)
When overridden in a derived class, gets the column ordinal given the name of the column.
public override int GetOrdinal(string name)
Parameters
name
stringThe name of the column.
Returns
- int
The zero-based column ordinal.
Exceptions
- IndexOutOfRangeException
The name specified is not a valid column name.
GetSchemaTable()
Returns a DataTable that describes the column metadata of the DbDataReader. Returns null if the executed command returned no resultset, or after NextResult() returns false.
public override DataTable GetSchemaTable()
Returns
Exceptions
- InvalidOperationException
The DbDataReader is closed.
- IndexOutOfRangeException
The column index is out of range.
- NotSupportedException
.NET Core and .NET 5+ only: In all cases.
GetString(int)
When overridden in a derived class, gets the value of the specified column as an instance of string.
public override string GetString(int ordinal)
Parameters
ordinal
intThe zero-based column ordinal.
Returns
- string
The value of the specified column.
Exceptions
- IndexOutOfRangeException
The column index is out of range.
- InvalidCastException
The specified cast is not valid.
GetValue(int)
When overridden in a derived class, gets the value of the specified column as an instance of object.
public override object GetValue(int ordinal)
Parameters
ordinal
intThe zero-based column ordinal.
Returns
- object
The value of the specified column.
Exceptions
- IndexOutOfRangeException
The column index is out of range.
GetValues(object[])
When overridden in a derived class, populates an array of objects with the column values of the current row.
public override int GetValues(object[] values)
Parameters
Returns
IsDBNull(int)
When overridden in a derived class, gets a value that indicates whether the column contains nonexistent or missing values.
public override bool IsDBNull(int ordinal)
Parameters
ordinal
intThe zero-based column ordinal.
Returns
Exceptions
- IndexOutOfRangeException
The column index is out of range.
NextResult()
When overridden in a derived class, advances the reader to the next result when reading the results of a batch of statements.
public override bool NextResult()
Returns
Read()
When overridden in a derived class, advances the reader to the next record in a result set.
public override bool Read()
Returns
ReadAsync(CancellationToken)
Asynchronously advances the reader to the next record in a result set.
public override Task<bool> ReadAsync(CancellationToken cancellationToken)
Parameters
cancellationToken
CancellationTokenThe cancellation instruction.
Returns
- Task<bool>
A Task<TResult> whose Result property is true if there are more rows or false if there aren't.
Exceptions
- DbException
An error occurred while executing the command text.
ToString()
Returns a string that represents the current object.
public override string ToString()
Returns
- string
A string that represents the current object.