Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Url 类型“Microsoft.Dynamics.CRM.entity”上的属性“field”不是导航属性或复杂属性。只能扩展导航属性_Url_Odata_Dynamics Crm_Microsoft Dynamics_Dynamics Crm 365 - Fatal编程技术网

Url 类型“Microsoft.Dynamics.CRM.entity”上的属性“field”不是导航属性或复杂属性。只能扩展导航属性

Url 类型“Microsoft.Dynamics.CRM.entity”上的属性“field”不是导航属性或复杂属性。只能扩展导航属性,url,odata,dynamics-crm,microsoft-dynamics,dynamics-crm-365,Url,Odata,Dynamics Crm,Microsoft Dynamics,Dynamics Crm 365,在Dynamics 365中遇到这个问题,它似乎应该可以工作,但给了我: 类型“Microsoft.Dynamics.CRM.biz\u productbuyer”上的属性“\u biz\u buyerlookupid\u value”不是导航属性或复杂属性。只能扩展导航属性 我可以复制这里提供的示例,它可以找到: 基本上是在相关字段中进行读取,这样我就不必再进行查询了 因此,我在一个名为Product Buyer或biz_ProductBuyer的定制实体中有一个查找字段,用于输入与该产品关联

在Dynamics 365中遇到这个问题,它似乎应该可以工作,但给了我:

类型“Microsoft.Dynamics.CRM.biz\u productbuyer”上的属性“\u biz\u buyerlookupid\u value”不是导航属性或复杂属性。只能扩展导航属性

我可以复制这里提供的示例,它可以找到:

基本上是在相关字段中进行读取,这样我就不必再进行查询了

因此,我在一个名为Product Buyer或biz_ProductBuyer的定制实体中有一个查找字段,用于输入与该产品关联的联系人姓名

查看实体的字段时,该字段称为biz_buyerlookupid

当您使用web API时,它表示该实体中不存在任何称为biz_buyerlookupid的内容。去掉$select=并将其打开运行,以便我可以搜索它

有一个名为_biz_buyerlookupid_value的字段。我将其放入$select,它返回:

{
    @odata.etag: "W/"20636204"",
    _biz_buyerlookupid_value: "906595fd-2a83-dc11-ae20-000feaed3854",
    biz_productbuyerid: "8be67d14-9efb-4335-98c7-000451a50cef",
}
显然这两个字段之间存在某种关系,但听起来_biz_buyerlookupid_值是对联系人的查找。_biz_buyerlookupid_值与联系人实体中的实际值(即单个contactid)相对应。我查过了。已尝试以下所有操作,并已收到上述消息:

/api/data/v9.0/biz_productbuyers?$select=_biz_buyerlookupid_value&$expand=_biz_buyerlookupid_value($select=contactid, fullname)

/api/data/v9.0/biz_productbuyers?$select=_biz_buyerlookupid_value&$expand=biz_productbuyerid($select=contactid, fullname)

/api/data/v9.0/biz_productbuyers?$select=biz_productbuyerid&$expand=biz_productbuyerid($select=contactid, fullname)

/api/data/v9.0/biz_productbuyers?$select=biz_productbuyerid&$expand=_biz_buyerlookupid_value($select=contactid, fullname)

这是怎么回事?它应该尽我所能从联系人实体中输入contactid和全名。

我的理解是,[field]\u值项将立即为您提供关联项的GUID

要使用$expand,必须使用架构名称,因此它应该如下所示:

$expand=biz_buyerlookupid($select=contactid, fullname)
注意biz_buyerlookupid是区分大小写的


您可以查看CRM实例的元数据以获得正确的大小写:

查看$metadata非常有用!从那里我可以查看,然后查看与查找关联的。从那里我得到了它使用的实际名称,它看起来确实是模式名称。现在工作!额外好处:对于将来需要它的任何人,您可以组合多个扩展,如$expand=schema\u name1$select=field、schema\u name2$select=field。