Show / Hide Table of Contents

Class PagedEnumerable<TResponse, TResource>

A sequence of resources obtained via API responses, each of which contributes a page of resources. Application code can treat this as a simple sequence (with API calls automatically being made lazily as more results are required), or call AsRawResponses() to retrieve a page at a time, potentially with additional information.

Inheritance
System.Object
PagedEnumerable<TResponse, TResource>
Implements
System.Collections.Generic.IEnumerable<TResource>
System.Collections.IEnumerable
Inherited Members
System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Namespace: Google.Api.Gax
Assembly: Google.Api.Gax.dll
Syntax
public abstract class PagedEnumerable<TResponse, TResource> : IEnumerable<TResource>, IEnumerable
Type Parameters
Name Description
TResponse

The API response type. Each response contains a page of resources.

TResource

The resource type contained within the response.

Methods

AsRawResponses()

Returns the sequence of raw API responses, each of which contributes a page of resources to this sequence.

Declaration
public virtual IEnumerable<TResponse> AsRawResponses()
Returns
Type Description
System.Collections.Generic.IEnumerable<TResponse>

A sequence of raw API responses, each containing a page of resources.

GetEnumerator()

Declaration
public virtual IEnumerator<TResource> GetEnumerator()
Returns
Type Description
System.Collections.Generic.IEnumerator<TResource>
Implements
System.Collections.Generic.IEnumerable<T>.GetEnumerator()

ReadPage(Int32)

Eagerly reads a single page of results with a fixed maximum size. The returned page is guaranteed to have that many results, unless there is no more data available.

Declaration
public virtual Page<TResource> ReadPage(int pageSize)
Parameters
Type Name Description
System.Int32 pageSize

The page size. Must be greater than 0.

Returns
Type Description
Page<TResource>

An asynchronous operation, the result of which is a page of resources.

Remarks

"Natural" pages returned by the API may contain a smaller number of resources than requested. For example, a request for a page with 100 resources may return a page with 80 resources but a next page token for more to be retrieved. This is suitable for batch-processing, but not for user-visible paging such as in a web application, where fixed-size pages are expected. This method may make more than one API call in order to fill the page, but after the page has been returned, all the data will have been loaded. (In particular, iterating over the items in the page multiple times will not make any further requests.)

Explicit Interface Implementations

IEnumerable.GetEnumerator()

Declaration
IEnumerator IEnumerable.GetEnumerator()
Returns
Type Description
System.Collections.IEnumerator
Implements
System.Collections.IEnumerable.GetEnumerator()
Back to top