【问题标题】:Microsoft Dynamics API - Getting Fields from Entity with NavigationMicrosoft Dynamics API - 使用导航从实体获取字段
【发布时间】:2021-05-25 20:52:17
【问题描述】:

我正在尝试从实体获取字段列表,例如联系人,我已经成功完成了请求:

EntityDefinitions(LogicalName='contact')/Attributes/Microsoft.Dynamics.CRM.AttributeMetadata

但是现在我需要获取在此实体上定义的导航属性,我已经找到了有关在通过 id 查询特定记录时如何获取导航属性的信息,但在这种情况下,我在获取字段列表时需要它。

提前感谢您的帮助

【问题讨论】:

    标签: dynamics-crm microsoft-dynamics dataverse


    【解决方案1】:

    参考文档:https://docs.microsoft.com/en-us/powerapps/developer/data-platform/webapi/query-metadata-web-api

    您已经拥有 Lookup 属性,AttributeMetadata 拥有一切。 如果您只想读取查找的元数据,请将类型更改为LookupAttributeMetadata

    EntityDefinitions(LogicalName='contact')/Attributes/Microsoft.Dynamics.CRM.LookupAttributeMetadata
    

    要获取列列表旁边的关系信息,则需要额外的查询,RelationshipDefinitions

    /RelationshipDefinitions/Microsoft.Dynamics.CRM.OneToManyRelationshipMetadata
    /RelationshipDefinitions/Microsoft.Dynamics.CRM.ManyToManyRelationshipMetadata
    
    filter on ReferencedEntity / ReferencingEntity to limit the results
    /RelationshipDefinitions/Microsoft.Dynamics.CRM.ManyToManyRelationshipMetadata 
    
    filter on Entity1LogicalName / Entity2LogicalName / IntersectEntityName
    

    【讨论】:

    • 感谢您提供的信息。我有 2 个问题:a) 通过使用 AttributeMetadata 我看不到导航选项或关系,是。有可能。在一个查询中得到它? b) 使用 LookupAttributeMetadata 看起来很有趣,如果没有该查询已经获得的查找属性,我如何获取属性?
    • both) 据我所知不可能
    • 第二个我想我可以做到:EntityDefinitions(LogicalName='contact')/Attributes/Microsoft.Dynamics.CRM.AttributeMetadata?$filter=AttributeType ne 'Lookup',这样我可以在单独的调用中获取 LookUp 属性。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-14
    • 1970-01-01
    相关资源
    最近更新 更多