Para ver el artículo en inglés, active la casilla Inglés. También puede ver el texto en inglés en una ventana emergente si pasa el puntero del mouse por el texto.
Traducción
Inglés
Esta documentación está archivada y no tiene mantenimiento.

DataServiceCollection<T>.Continuation (Propiedad)

Obtiene un objeto de continuación que se usa para devolver el siguiente conjunto de resultados paginados.

Espacio de nombres:  System.Data.Services.Client
Ensamblado:  System.Data.Services.Client (en System.Data.Services.Client.dll)

public DataServiceQueryContinuation<T> Continuation { get; set; }

Valor de propiedad

Tipo: System.Data.Services.Client.DataServiceQueryContinuation<T>
Objeto DataServiceQueryContinuation<T> que contiene el URI para devolver el siguiente conjunto de resultados paginados.

La propiedad Continuation devuelve un vínculo que se utiliza para tener acceso al conjunto siguiente de resultados paginados si está habilitada la paginación en el servicio de datos. Para obtener más información, vea Configuring the Data Service (WCF Data Services).

Cuando se carga un resultado paginado en DataServiceCollection<T>, explícitamente debe cargar páginas llamando al método Load(IEnumerable<T>) en DataServiceCollection<T> pasando el resultado de la ejecución del URI que se obtuvo de la propiedad Continuation.

El ejemplo siguiente es de la página de código subyacente de una página de lenguaje XAML que define la ventana SalesOrders en WPF. Cuando se carga la ventana, DataServiceCollection<T> se crea dependiendo del resultado de una consulta que devuelve los clientes, filtrados por país. Se cargan todas las páginas de esto resultado paginado, junto con los órdenes relacionados y se enlazan a la propiedad DataContext de StackPanel que es el control de diseño de raíz para la ventana de WPF. Para obtener más información, vea How to: Bind Data to Windows Presentation Foundation Elements (WCF Data Services).


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Data.Services.Client;
using NorthwindClient.Northwind;

namespace NorthwindClient
{
    public partial class CustomerOrdersWpf3 : Window
    {
        private NorthwindEntities context;
        private DataServiceCollection<Customer> trackedCustomers;
        private const string customerCountry = "Germany";
        private const string svcUri = "http://localhost:12345/Northwind.svc/";

        public CustomerOrdersWpf3()
        {
            InitializeComponent();
        }

        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            try
            {
                // Initialize the context for the data service.
                context = new NorthwindEntities(new Uri(svcUri));

                // Create a LINQ query that returns customers with related orders.
                var customerQuery = from cust in context.Customers
                                    where cust.Country == customerCountry
                                    select cust;

                // Create a new collection for binding based on the LINQ query.
                trackedCustomers = new DataServiceCollection<Customer>(customerQuery);

                // Load all pages of the response at once.
                while (trackedCustomers.Continuation != null)
                {
                    trackedCustomers.Load(
                        context.Execute<Customer>(trackedCustomers.Continuation.NextLinkUri));
                }

                // Bind the root StackPanel element to the collection;
                // related object binding paths are defined in the XAML.
                LayoutRoot.DataContext = trackedCustomers;
            }
            catch (DataServiceQueryException ex)
            {
                MessageBox.Show("The query could not be completed:\n" + ex.ToString());
            }
            catch (InvalidOperationException ex)
            {
                MessageBox.Show("The following error occured:\n" + ex.ToString());
            }
        }

        private void customerIDComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            Customer selectedCustomer = 
                this.customerIDComboBox.SelectedItem as Customer;

            try
            {
                // Load the first page of related orders for the selected customer.
                context.LoadProperty(selectedCustomer, "Orders");

                // Load all remaining pages.
                while (selectedCustomer.Orders.Continuation != null)
                {
                    selectedCustomer.Orders.Load(
                        context.Execute<Order>(selectedCustomer.Orders.Continuation.NextLinkUri));
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }

        private void saveChangesButton_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                // Save changes to the data service.
                context.SaveChanges();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }
    }
}


.NET Framework

Compatible con: 4

.NET Framework Client Profile

Compatible con: 4

Windows 7, Windows Vista SP1 o posterior, Windows XP SP3, Windows Server 2008 (no se admite Server Core), Windows Server 2008 R2 (se admite Server Core con SP1 o posterior), Windows Server 2003 SP2

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.
Mostrar: