Freigeben über


DataServiceQueryContinuation<T>-Klasse

Kapselt einen URI, der die nächste Seite eines ausgelagerten WCF Data Services-Abfrageergebnisses zurückgibt. 

Vererbungshierarchie

System.Object
  System.Data.Services.Client.DataServiceQueryContinuation
    System.Data.Services.Client.DataServiceQueryContinuation<T>

Namespace:  System.Data.Services.Client
Assembly:  Microsoft.Data.Services.Client (in Microsoft.Data.Services.Client.dll)

Syntax

'Declaration
Public NotInheritable Class DataServiceQueryContinuation(Of T) _
    Inherits DataServiceQueryContinuation
'Usage
Dim instance As DataServiceQueryContinuation(Of T)
public sealed class DataServiceQueryContinuation<T> : DataServiceQueryContinuation
generic<typename T>
public ref class DataServiceQueryContinuation sealed : public DataServiceQueryContinuation
[<SealedAttribute>]
type DataServiceQueryContinuation<'T> =  
    class
        inherit DataServiceQueryContinuation
    end
JScript unterstützt keine generischen Typen und Methoden.

Typparameter

  • T
    Der Typ des Fortsetzungs-Tokens.

Der DataServiceQueryContinuation<T>-Typ macht folgende Elemente verfügbar.

Eigenschaften

  Name Beschreibung
Öffentliche Eigenschaft NextLinkUri Ruft den URI ab, der zum Zurückgeben der nächsten Datenseite aus einem ausgelagerten Abfrageergebnis verwendet wird. (Geerbt von DataServiceQueryContinuation.)

Zum Anfang

Methoden

  Name Beschreibung
Öffentliche Methode Equals (Geerbt von Object.)
Geschützte Methode Finalize (Geerbt von Object.)
Öffentliche Methode GetHashCode (Geerbt von Object.)
Öffentliche Methode GetType (Geerbt von Object.)
Geschützte Methode MemberwiseClone (Geerbt von Object.)
Öffentliche Methode ToString Gibt den nächsten Link-URI als Zeichenfolge zurück. (Geerbt von DataServiceQueryContinuation.)

Zum Anfang

Beispiele

Dieses Beispiel verwendet eine Schleife mit do…while zum Laden von Customers Entitäten aus einem Seitenergebnis vom Datendienst.

' Create the DataServiceContext using the service URI.
Dim context = New NorthwindEntities(svcUri)
Dim token As DataServiceQueryContinuation(Of Customer) = Nothing
Dim pageCount = 0

Try
    ' Execute the query for all customers and get the response object.
    Dim response As QueryOperationResponse(Of Customer) = _
        CType(context.Customers.Execute(), QueryOperationResponse(Of Customer))

    ' With a paged response from the service, use a do...while loop 
    ' to enumerate the results before getting the next link.
    Do
        ' Write the page number.
        Console.WriteLine("Page {0}:", pageCount + 1)

        ' If nextLink is not null, then there is a new page to load.
        If token IsNot Nothing Then
            ' Load the new page from the next link URI.
            response = CType(context.Execute(Of Customer)(token),  _
            QueryOperationResponse(Of Customer))
        End If

        ' Enumerate the customers in the response.
        For Each customer As Customer In response
            Console.WriteLine(vbTab & "Customer Name: {0}", customer.CompanyName)
        Next

        ' Get the next link, and continue while there is a next link.
        token = response.GetContinuation()
    Loop While token IsNot Nothing
Catch ex As DataServiceQueryException
    Throw New ApplicationException( _
            "An error occurred during query execution.", ex)
End Try
// Create the DataServiceContext using the service URI.
NorthwindEntities context = new NorthwindEntities(svcUri);
DataServiceQueryContinuation<Customer> token = null;
int pageCount = 0; 

try
{ 
    // Execute the query for all customers and get the response object.
    QueryOperationResponse<Customer> response =
        context.Customers.Execute() as QueryOperationResponse<Customer>;

    // With a paged response from the service, use a do...while loop 
    // to enumerate the results before getting the next link.
    do
    {
        // Write the page number.
        Console.WriteLine("Page {0}:", pageCount++);

        // If nextLink is not null, then there is a new page to load.
        if (token != null)
        {
            // Load the new page from the next link URI.
            response = context.Execute<Customer>(token)
                as QueryOperationResponse<Customer>;
        }

        // Enumerate the customers in the response.
        foreach (Customer customer in response)
        {
            Console.WriteLine("\tCustomer Name: {0}", customer.CompanyName);
        }
    }

    // Get the next link, and continue while there is a next link.
    while ((token = response.GetContinuation()) != null);
}
catch (DataServiceQueryException ex)
{
    throw new ApplicationException(
        "An error occurred during query execution.", ex);
}

Threadsicherheit

Alle öffentlichen static (Shared in Visual Basic)-Elemente dieses Typs sind Threadsicher. Für Instanzelemente wird die Threadsicherheit nicht gewährleistet.

Siehe auch

Verweis

System.Data.Services.Client-Namespace

Andere Ressourcen

Laden von verzögertem Inhalt (WCF Data Services)