Del via


Bruge klassen QueryExpression

 

Udgivet: januar 2017

Gælder for: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

I Microsoft Dynamics 365 og Microsoft Dynamics 365 (online) kan du bruge QueryExpression-klassen til at oprette komplekse forespørgsler til brug sammen med IOrganizationService.RetrieveMultiple-metoden eller RetrieveMultipleRequest-meddelelsen. Du kan angive forespørgselsparametrene til QueryExpression ved hjælp af den ConditionExpression-, ColumnSet- og FilterExpression-klasser.

Med QueryExpression-klassen kan du oprette komplekse forespørgsler. Klassen QueryByAttribute er en simpel metode til at søge efter objekter, hvor attributter matcher angivne værdier.

I følgende tabel vises egenskaber, du kan angive for at oprette et forespørgselsudtryk.

Egenskab

Beskrivelse

EntityName

Angiver, hvilken type objekt der skal hentes. Et forespørgselsudtryk kan kun hente en samling af én objekttype.

ColumnSet

Angiver sæt af attributter (kolonner), der skal hentes.

Criteria

Angiver komplekse betingelsesudtryk og logiske filterudtryk, som filtrerer resultaterne af forespørgslen.

Distinct

Angiver, om resultaterne af forespørgslen indeholder dublerede poster.

LinkEntities

Angiver links mellem flere objekttyper.

Orders

Angiver den rækkefølge, hvori poster returneres fra forespørgslen.

PageInfo

Angiver antallet sider og antallet af poster pr. side, der returneres af forespørgslen.

Antal poster

For at finde ud af, hvor mange poster forespørgslen har returneret, skal du angive ReturnTotalRecordCount-egenskaben til true, før du udfører forespørgslen. Når du gør det, bliver TotalRecordCount angivet. Ellers bliver denne værdi -1.

Eksempel

Følgende eksempel viser, hvordan du bruger klassen QueryExpression.

//  Query using ConditionExpression and FilterExpression
ConditionExpression condition1 = new ConditionExpression();
condition1.AttributeName = "lastname";
condition1.Operator = ConditionOperator.Equal;
condition1.Values.Add("Brown");            

FilterExpression filter1 = new FilterExpression();
filter1.Conditions.Add(condition1);

QueryExpression query = new QueryExpression("contact");
query.ColumnSet.AddColumns("firstname", "lastname");
query.Criteria.AddFilter(filter1);

EntityCollection result1 = _serviceProxy.RetrieveMultiple(query);
Console.WriteLine();Console.WriteLine("Query using Query Expression with ConditionExpression and FilterExpression");
Console.WriteLine("---------------------------------------");
foreach (var a in result1.Entities)
{
    Console.WriteLine("Name: " + a.Attributes["firstname"] + " " + a.Attributes["lastname"]);
}
Console.WriteLine("---------------------------------------");

Se også

QueryExpression
Oprette forespørgsler med QueryExpression
Brug af klassen ColumnSet
Brug klassen ConditionExpression
Brug klassen FilterExpression

Microsoft Dynamics 365

© 2017 Microsoft. Alle rettigheder forbeholdes. Ophavsret