如何传递 EntityReference 以在 Microsoft Dynamics 365 CRM 中的查找字段上添加属性值

How to pass an EntityReference to add attribute value on a lookup field in Microsoft Dynamics 365 CRM

Entity contact = new Entity("contact");
contact.Attributes.Add("fullname", "h api test");
contact.Attributes.Add("emailaddress1", "hh@devenv1.local");
contact.Attributes.Add("telephone1", "1");

contact.Attributes["parentcusotmerid"] = new EntityReference("Organization", );

Guid contactId = m_OrgServ.Create(contact);
Console.WriteLine(contactId);

The lookup field I want to set

查找字段的逻辑名称是 parentcusotmerid

m_OrgSerc.create 

基本上是

Service.create

我正在为字段设置属性值,它适用于我输入值的普通文本框,但是对于查找值它不起作用。我知道查找字段的类型是 EntityReference,所以我需要知道查找指向的实体的 LogicalName 和记录的 Id

我已经尝试过了,但它现在要求提供组织字段的 GUID,所以我不确定我的做法是否正确?

您不能将 "parentcustomerid" 设置为组织。它是一个特殊的引用字段,将客户或联系人实体引用作为参数。

如果你想设置它你就这样

contact.Attributes["parentcusotmerid"] = new EntityReference("account", Guid.NewGuid());

contact.Attributes["parentcusotmerid"] = new EntityReference("contact", Guid.NewGuid());

其中 Guid.NewGuid() 是您要引用的帐户或联系人的 Guid