Paginas grandes conjuntos de resultados com o LINQ
Publicado: novembro de 2016
Aplicável a: Dynamics CRM 2015
No Atualização do Microsoft Dynamics CRM 2015 e Microsoft Dynamics CRM Online 2015, é possível paginar os resultados de uma grande consulta .NET LINQ (Language-Integrated Query) usando os operadores Take e Skip. O operador Take recupera um número especificado de resultados e o operador Skip ignora um número especificado de resultados.
Exemplo de paginamento LINQ
O exemplo a seguir mostra como paginar os resultados da consulta LINQ usando os operadores Take e Skip:
int pageSize = 5;
var accountsByPage = (from a in svcContext.AccountSet
select new Account
{
Name = a.Name,
});
System.Console.WriteLine("Skip 10 accounts, then Take 5 accounts");
System.Console.WriteLine("======================================");
foreach (var a in accountsByPage.Skip(2 * pageSize).Take(pageSize))
{
System.Console.WriteLine(a.Name);
}
' Retrieve records with Skip/Take record paging. Setting a page size
' can help you manage your Skip and Take calls, since Skip must be
' passed a multiple of Take's parameter value.
Dim pageSize As Integer = 5
Dim accountsByPage = ( _
From a In svcContext.CreateQuery(Of Account)() _
Select New Account With {.Name = a.Name})
Console.WriteLine("Skip 10 accounts, then Take 5 accounts")
Console.WriteLine("======================================")
For Each a In accountsByPage.Skip(2 * pageSize).Take(pageSize)
Console.WriteLine(a.Name)
Next a
Console.WriteLine()
Console.WriteLine("<End of Listing>")
Console.WriteLine()
Confira Também
Compilação de consultas com o LINQ (Language-Integrated Query do .NET)
Exemplos de consulta do LINQ
© 2017 Microsoft. Todos os direitos reservados. Direitos autorais