De klasse ConditionExpression gebruiken
Gepubliceerd: januari 2017
Is van toepassing op: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online
In Microsoft Dynamics 365 (online en on-premises), kunt u de klasse ConditionExpression gebruiken om een kenmerk te vergelijken met een waarde of reeks van waarden met behulp van een operator, zoals "gelijk aan" of "groter dan". Via de klasse ConditionExpression kunt u voorwaardenexpressies doorgeven als parameters aan andere klassen, zoals QueryExpression en FilterExpression.
De volgende tabel bevat de eigenschappen die u kunt instellen voor het maken van een voorwaarde met de klasse ConditionExpression.
Eigenschap |
Beschrijving |
---|---|
Geeft de logische naam van het kenmerk in de voorwaarde-expressie op. |
|
Geeft de voorwaardenoperator op. Deze wordt ingesteld door de opsomming ConditionOperator te gebruiken. |
|
Geeft de waarden van het kenmerk op. |
Als u de methode AddCondition (of de constructor voor ConditionExpression) gebruikt, is het belangrijk te weten of de matrix wordt toegevoegd als meerdere waarden of als matrix.
Het volgende codevoorbeeld laat twee verschillende resultaten zien, afhankelijk van hoe de matrix wordt gebruikt.
string[] values = new string[] { "Value1", "Value2" };
ConditionExpression c = new ConditionExpression("name", ConditionOperator.In, values);
Console.WriteLine(c.Values.Count); //This will output 2
string[] values = new string[] { "Value1", "Value2" }object value = values;
ConditionExpression c = new ConditionExpression("name", ConditionOperator.In, value);
Console.WriteLine(c.Values.Count); //This will output 1
In sommige gevallen is het noodzakelijk om te converteren naar object[] of naar object, afhankelijk van het gewenste gedrag.
Wanneer u een voorwaarde maakt waarbij een kenmerkwaarde met een opsomming wordt vergeleken, zoals een statuscode, moet u de methode ToString gebruiken om de waarde te converteren naar een tekenreeks.
Voorbeeld
In het volgende codevoorbeeld ziet u hoe u de klasse ConditionExpression kunt gebruiken.
// Query using ConditionExpression
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("---------------------------------------");
Voorbeeld
Het volgende code voorbeeld laat zien hoe u de klasse ConditionExpression gebruikt om voor de inactieve status te testen.
ConditionExpression condition3 = new ConditionExpression();
condition3.AttributeName = "statecode";
condition3.Operator = ConditionOperator.Equal;
condition3.Values.Add(AccountState.Active);
Zie ook
ConditionExpression
Bouw query's met QueryExpression
Bouw query's met QueryExpression
De klasse FilterExpression gebruiken
Microsoft Dynamics 365
© 2017 Microsoft. Alle rechten voorbehouden. Auteursrecht