2016-11-11 4 views
0

Laut MSDN die LinkEntities -Eigenschaft unter QueryExpression, "Ruft eine Auflistung der Verknüpfungen zwischen mehreren Entitätstypen." Wenn ich jedoch die OrganizationService.RetriveMultiple(QueryExpression) ausführen, erhalte ich nur eine der zugehörigen Entitäten, die der LinkFromEntity zugeordnet sind.Microsoft.Xrm.Sdk.Query.QueryExpression.LinkEntities gibt nur einen Wert zurück

Im folgenden Beispiel hat die xxx_application zwei xxx_essayresponse Entitäten, die damit verbunden sind.

 QueryExpression appQuery = new QueryExpression("xxx_application"); 
     appQuery.ColumnSet = new ColumnSet(new string[] { "xxx_status", "xxx_applicant" }); 

     appQuery.LinkEntities.Add(new LinkEntity("xxx_application", "xxx_essayresponse", "xxx_applicationid", "xxx_responsefor", JoinOperator.LeftOuter)); 
     appQuery.LinkEntities[0].Columns.AddColumns("xxx_essayresponseid", "xxx_question"); 
     appQuery.LinkEntities[0].EntityAlias = "essay"; 

     EntityCollection retrivedContacts = service.RetrieveMultiple(appQuery); 

Nachdem ich die Abfrage ausgeführt habe, erhalte ich nur eine xxx_essayresponse auf die zurückgegebene Entität.

Sreenshot

Antwort

2

Sie sollten ein Application Entity für jedes Essay Antwort. Verknüpfte Entitätswerte werden in den Attributen der Haupteinheit als Aliase-Werte angezeigt. In Ihrem Beispiel hätten Sie also zwei Application Entities mit jeweils unterschiedlichen Essay Responses zurückgeben sollen.

Verwandte Themen