Esempio: Recuperare con una relazione uno-a-molti
Data di pubblicazione: novembre 2016
Si applica a: Dynamics CRM 2015
Requisiti
Per ulteriori informazioni sui requisiti per l'esecuzione del codice di esempio fornito nell'SDK, vedi Utilizzare il codice di esempio e dell'helper.
Esempio
Nel seguente esempio viene illustrato come utilizzare il metodo RetrieveMultiple per restituire le entità 1:N correlate di un'entità insieme all'entità primaria. In questo esempio, viene recuperato un account e le attività correlate.
Console.WriteLine("One-to-many Query using RetrieveMultiple");
Console.WriteLine();
//Create an account and three related tasks
Account account = new Account();
account.Name = "SDK Test Account";
Guid acctId = _serviceProxy.Create(account);
Console.WriteLine("New account created.");
Console.WriteLine();
Task task1 = new Task();
task1.Subject = "Test Task1";
task1.RegardingObjectId = new EntityReference("account", acctId);
Guid task1Id = _serviceProxy.Create(task1);
Task task2 = new Task();
task2.Subject = "Test Task2";
task2.RegardingObjectId = new EntityReference("account", acctId);
Guid task2Id = _serviceProxy.Create(task2);
Task task3 = new Task();
task3.Subject = "Test Task3";
task3.RegardingObjectId = new EntityReference("account", acctId);
Guid task3Id = _serviceProxy.Create(task2);
Console.WriteLine("Three tasks created.");
Console.WriteLine();
// Construct query
// Condition where task attribute equals account id.
ConditionExpression condition = new ConditionExpression();
condition.AttributeName = "regardingobjectid";
condition.Operator = ConditionOperator.Equal;
condition.Values.Add(acctId.ToString());
//Create a column set.
ColumnSet columns = new ColumnSet("subject");
// Create query expression.
QueryExpression query1 = new QueryExpression();
query1.ColumnSet = columns;
query1.EntityName = "task";
query1.Criteria.AddCondition(condition);
EntityCollection result1 = _serviceProxy.RetrieveMultiple(query1);
foreach (var r in result1.Entities)
{
Console.WriteLine(r.Attributes["subject"]);
};
Console.WriteLine("-------------------------------");
Console.WriteLine();
Vedere anche
IOrganizationService
QueryExpression
IOrganizationService
RetrieveMultiple
Compilare query con QueryExpression
Esempio: recuperare più elementi con la classe QueryByAttribute
© 2017 Microsoft. Tutti i diritti sono riservati. Copyright