Condividi tramite


Classe LinkEntity

Si applica a: CRM 2015 on-prem, CRM Online

Specifies the links between multiple entity types used in creating complex queries.

Spazio dei nomi: Microsoft.Xrm.Sdk.Query
Assembly: Microsoft.Xrm.Sdk (in Microsoft.Xrm.Sdk.dll)

Sintassi

'Dichiarazione
<DataContractAttribute(Name:="LinkEntity", Namespace:="https://schemas.microsoft.com/xrm/2011/Contracts")> _
Public NotInheritable Class LinkEntity
    Implements IExtensibleDataObject
[DataContractAttribute(Name="LinkEntity", Namespace="https://schemas.microsoft.com/xrm/2011/Contracts")] 
public sealed class LinkEntity : IExtensibleDataObject

Esempio

q = new QueryExpression();
q.EntityName = "account";
q.ColumnSet = new ColumnSet();
q.ColumnSet.Columns.Add("name");

q.LinkEntities.Add(new LinkEntity("account", "contact", "primarycontactid", "contactid", JoinOperator.Inner));
q.LinkEntities[0].Columns.AddColumns("firstname", "lastname");
q.LinkEntities[0].EntityAlias = "temp";

q.Criteria = new FilterExpression();
q.Criteria.AddCondition("accountnumber", ConditionOperator.Equal, accountNumber);
q.Orders.Add(new OrderExpression("name", OrderType.Descending));
q.Distinct = true;
EntityCollection ec = this.Context.Proxy.RetrieveMultiple(q);

Log.Assert(ec.Entities.Count == 3, "Expected 3 entities, received {0}", ec.Entities.Count);
Log.Assert((string)ec.Entities[0]["name"] == "SdkAccount3", "First Entity should be SdkAccount3");
Log.Assert((string)ec.Entities[1]["name"] == "SdkAccount2", "First Entity should be SdkAccount2");
Log.Assert((string)ec.Entities[2]["name"] == "SdkAccount1", "First Entity should be SdkAccount1");
Log.Assert((string)((AliasedValue)ec.Entities[0]["temp.firstname"]).Value == (string)contact["firstname"], "Expected {0} Got {1}", contact["firstname"], ec.Entities[0]["temp.firstname"]);
Log.Assert((string)((AliasedValue)ec.Entities[1]["temp.lastname"]).Value == (string)contact["lastname"], "Expected {0} Got {1}", contact["lastname"], ec.Entities[1]["temp.lastname"]);

Gerarchia ereditarietà

System.Object
  Microsoft.Xrm.Sdk.Query.LinkEntity

Thread Safety

Tutti i membri statici pubblici (Shared in Visual Basic) di questo tipo sono thread-safe. Non è garantito che i membri di istanza siano thread-safe.

Piattaforme

Piattaforme di sviluppo

Windows Vista, Windows Server 2003 e

Piattaforme di destinazione

Windows Vista,Windows XP

Change History

Vedere anche

Riferimento

Membri LinkEntity
Spazio dei nomi Microsoft.Xrm.Sdk.Query
LinkEntities

Send comments about this topic to Microsoft.
© 2014 Microsoft Corporation. All rights reserved.