无法从EntityReference获取名称

时间:2014-12-13 07:07:45

标签: dynamics-crm dynamics-crm-2015

我正在为我的插件使用CRM 2015 SDK。我想在我的代码中使用实体引用的属性。我能够获得Guid和逻辑名称。但是,对于所有实体引用字段,名称都返回null。这是我的代码:

EntityReference centre= ((EntityReference)quoteEntity.Attributes["mc_centre"]);
Guid centreGuid = centre.Id; //returns Guid
string centreName = centre.Name; //returns null

我检查了Referenced Entity,“Center”,它使用'name'字段并具有有效值。有没有人遇到同样的问题?我在代码中做错了吗?我不希望另一个服务电话获得名称btw。

2 个答案:

答案 0 :(得分:4)

从属性转换时,并不总是填充Name的{​​{1}}属性。 如果要获取名称,则需要进行额外检索。

这是相关的MSDN文章:EntityReference.Name Property

  

此属性可以包含值或null。这个属性不是   除非EntityReference对象已经自动填充   从服务器检索。

答案 1 :(得分:4)

Entity member = service.Retrieve("new_vendor", ((EntityReference)entity["new_vendorname"]).Id, new ColumnSet(true));

Entity member = service.Retrieve("new_vendor", Vendor.Id, new ColumnSet(true));


String VendorName = member.Attributes["new_name"].ToString();