Click or drag to resize

RowSet Class

Represents the result of a query returned by the server.

The retrieval of the rows of a RowSet is generally paged (a first page of result is fetched and the next one is only fetched once all the results of the first page have been consumed). The size of the pages can be configured either globally through SetPageSize(Int32) or per-statement with SetPageSize(Int32). Though new pages are automatically and transparently fetched when needed, it is possible to force the retrieval of the next page early through FetchMoreResults and FetchMoreResultsAsync.

The RowSet dequeues Row items while iterated. After a full enumeration of this instance, following enumerations will be empty, as all rows have been dequeued.

Inheritance Hierarchy
SystemObject
  DseRowSet

Namespace:  Dse
Assembly:  Dse (in Dse.dll) Version: 2.9.0
Syntax
C#
public class RowSet : IEnumerable<Row>, 
	IEnumerable, IDisposable

The RowSet type exposes the following members.

Constructors
  NameDescription
Public methodRowSet
Creates a new instance of RowSet.
Top
Properties
  NameDescription
Public propertyColumns
Gets or sets the columns in the RowSet
Public propertyInfo
Gets the execution info of the query
Public propertyIsFullyFetched
Whether all results from this result set has been fetched from the database.
Public propertyPagingState
Gets or sets the paging state of the query for the RowSet. When set it states that there are more pages.
Top
Methods
  NameDescription
Public methodDispose Obsolete.
For backward compatibility only
Public methodFetchMoreResults
Forces the fetching the next page of results for this RowSet.
Public methodFetchMoreResultsAsync
Asynchronously retrieves the next page of results for this RowSet.

The Task will be completed once the internal queue is filled with the new Row instances.

Public methodGetAvailableWithoutFetching
The number of rows available in this row set that can be retrieved without blocking to fetch.
Public methodGetEnumerator
Returns an enumerator that iterates through the collection.
Public methodGetRows
For backward compatibility: It is possible to iterate using the RowSet as it is enumerable.

Obsolete: Note that it will be removed in future versions

Public methodIsExhausted
Returns whether this ResultSet has more results. It has side-effects, if the internal queue has been consumed it will page for more results.
Top
Remarks
RowSet paging is not available with the version 1 of the native protocol. If the protocol version 1 is in use, a RowSet is always fetched in it's entirely and it's up to the client to make sure that no query can yield ResultSet that won't hold in memory.
Remarks
Parallel enumerations are supported and thread-safe.
See Also

Reference