2017-08-06 1 views
-2

Ich versuche zu verstehen, die Verwendung von Entity Reference (in crm 2011) Ich fand online viele Beispiele für Entity-Referenz verwenden, meist mit Nachschlagefeldern, aber ich brauche eine absolute Entschlüsselung. Ist die Entitätsreferenz nur für das Nachschlagefeld geeignet? Kann ich eine einfache Entität verwenden, um meine Daten zu erhalten? Kann Entity die Entity-Referenz ersetzen? Meine Frage betrifft nicht nur den Unterschied zwischen EntityReference und Entity, sondern auch die Definition von EntityReference und warum/wo es zu verwenden ist. Kann jemand bitte dieses Thema klarstellen.Was ist Entity Reference Definition

+0

Mögliche Duplikate von [Convert EntityReference in Entity] (https://StackOverflow.com/questions/15277597/convert-entityreference-to-entity) –

+0

@ArunVinoth Ich sah diese Antwort, bevor ich meine Frage geschrieben und es war nicht Klar genug, ich glaube nicht, dass meine Frage ein Duplikat ist. – Damkulul

Antwort

7

In Dynamics CRM werden Entwicklungsdatensätze Entitäten genannt und bestehen aus Attributen. Wenn ein Attribut eine Suche ist (d. H. Eine Referenz auf eine andere Entität), ist es vom Typ . Der Typ EntityReference ist erforderlich, da er sowohl den logischen Namen der Entität als auch die id (a Guid) des spezifischen Datensatzes enthalten muss.

IOrganizationService service = GetService(); //TODO: Implement GetService() 

//From: https://msdn.microsoft.com/en-us/library/gg328149.aspx 

Entity contact = new Entity("contact"); 
contact.Attributes["firstname"] = "ContactFirstName"; 
contact.Attributes["lastname"] = "ContactLastName"; 
Guid contactId = service.Create(contact); 

Entity account = new Entity("account"); 
account["name"] = "Test Account1"; 
EntityReference primaryContactId = new EntityReference("contact", contactId); 
account["primarycontactid"] = primaryContactId; 

Entity Ein Objekt kann nicht als EntityReference Unterschied wegen der Art verwendet werden. Es gibt eine Methode auf Entity, die eine EntityReference, Entity.ToEntityReference() zurückgibt.

WICHTIG

Die entscheidende Sache über die EntityReference ist, dass es sowohl den logischen Namen und die id des Datensatzes.

In Dynamics CRM gibt es mehrere Bereiche, z. B. wenn der Datentyp Customer verwendet wird und sich ein Lookup möglicherweise auf mehrere Entitätstypen bezieht. In diesen Situationen gibt es für Dynamics CRM keine Möglichkeit, sich nur auf eine Guid als Datensatzkennung zu verlassen.