Solicitar resultados usando atributos da entidade com LINQ
Publicado: novembro de 2016
Aplicável a: Dynamics CRM 2015
No Microsoft Dynamics CRM 2015 e Microsoft Dynamics CRM Online, você pode usar os atributos de pesquisa ou OptionSet (lista de seleção) para classificar resultados em uma consulta LINQ. Este tópico mostra vários exemplos deste tipo de consulta.
Usando o valor de consulta para classificar por
Os seguintes exemplos mostram o uso do atributo de pesquisa PrimaryContactId em uma cláusula Order By.
using (ServiceContext svcContext = new ServiceContext(_serviceProxy))
{
var query_orderbylookup = from a in svcContext.AccountSet
where a.Address1_Name == "Contoso Pharmaceuticals"
orderby a.PrimaryContactId
select new
{
a.Name,
a.Address1_City
};
foreach (var a in query_orderbylookup)
{
System.Console.WriteLine(a.Name + " " + a.Address1_City);
}
}
Using svcContext As New ServiceContext(_serviceProxy)
Dim query_orderbylookup = From a In svcContext.AccountSet _
Where a.Address1_Name.Equals("Contoso Pharmaceuticals") _
Order By a.PrimaryContactId _
Select New With {Key a.Name,
Key a.Address1_City}
For Each a In query_orderbylookup
Console.WriteLine(a.Name & " " & a.Address1_City)
Next a
End Using
Usando a lista de seleção para classificar por
O seguinte exemplo mostra como usar um valor da pesquisa para classificar por.
using (ServiceContext svcContext = new ServiceContext(_serviceProxy))
{
var query_orderbypicklist = from c in svcContext.ContactSet
where c.LastName != "Parker" &&
c.AccountRoleCode != null
orderby c.AccountRoleCode, c.FirstName
select new
{
AccountRole = c.FormattedValues["accountrolecode"],
c.FirstName,
c.LastName
};
foreach (var c in query_orderbypicklist)
{
System.Console.WriteLine(c.AccountRole + " " +
c.FirstName + " " + c.LastName);
}
}
Using svcContext As New ServiceContext(_serviceProxy)
Dim query_orderbypicklist = From c In svcContext.ContactSet _
Where c.LastName IsNot "Parker" _
AndAlso c.AccountRoleCode IsNot Nothing _
Order By c.AccountRoleCode, c.FirstName _
Select New With
{Key .AccountRole =
c.FormattedValues("accountrolecode"),
Key c.FirstName, Key c.LastName}
For Each c In query_orderbypicklist
Console.WriteLine(c.AccountRole & " " & c.FirstName _
& " " & c.LastName)
Next c
End Using
Confira Também
Compilação de consultas com o LINQ (Language-Integrated Query do .NET)
Paginas grandes conjuntos de resultados com o LINQ
© 2017 Microsoft. Todos os direitos reservados. Direitos autorais