Dataverse 表/实体引用

使用此引用可了解特定表的可用操作、每个表的默认列以及表之间的关系。 表定义使用 EntityMetadata 类。

此引用仅包含满足以下条件的表:

  • EntityMetadata.IsPrivate 等于 false

    此条件不包括没有外部用例的表。

  • EntityMetadata.IsIntersect false等于或 IsIntersect 相等true,表包含的列数超过四列。

    大多数相交表只包含支持多对多关系所需的四列。 它们没有用处。 与四个以上的列的表相交并不常见,更有趣。

若要查看环境中所有表的信息,请参阅 环境中的“浏览表”定义。

Dynamics 365 产品表参考

Dynamics 365 产品使用 Dataverse。 为 Dynamics 365 产品创建环境时,环境对所有 Dynamics 365 产品都有一组通用表。 请参阅已启用Dynamics 365应用表/实体参考。

每个特定的Dynamics 365产品都可以添加更多表。 下表显示了特定 Dynamics 365 产品的表引用:

产品文档 产品表参考
销售 销售表/实体引用
现场服务 Field Service 表/实体引用
顾客服务 客户服务表/实体引用

属性

本节仅包含精选实体属性而非全部属性。 它仅包括那些对开发人员最有用的属性。 可以更改一些实体属性值。

列

列在两个单独的部分中列出:

部分 Description
可写列/属性 可以在表中创建或更新行时设置的列。 这些列返回true两者通常为或AttributeMetadata.IsValidForUpdateAttributeMetadata.IsValidForCreate属性。 如果任一属性返回 false,则指示此条件。
只读列/属性 可以在表中创建或更新行时检索但无法设置的列。 这些列始终返回 false 属性 AttributeMetadata.IsValidForCreate 和 AttributeMetadata.IsValidForUpdate 属性。

选择项列选项

本参考文档中的选择列选项基于以英语为基础语言的部署环境。 某些选项可能因创建环境时选择的基础语言而有所不同。 这些差异更紧密地与最适合语言或文化的选项保持一致。 可以通过更改标签或根据需要添加和删除选项来自定义这些选项。

Relationships

EntityMetadata 类包含三个属性来表示关系:

资产 类型 Description
OneToManyRelationships OneToManyRelationshipMetadata[] 获取实体的一对多关系数组。
ManyToOneRelationships OneToManyRelationshipMetadata[] 获取实体的多对一关系数组。
ManyToManyRelationships ManyToManyRelationshipMetadata[] 获取实体的多对多关系数组。

注释

虽然每个表列出了应用于它的关系,但每个关系由两个表共享。 表之间存在关系。 虽然存在一对多关系,但多 对一 关系只是引用表中一对多关系的视图。

多对一关系

包括以下 OneToManyRelationshipMetadata 类 属性:

资产 Description
ReferencedEntity 关联表的逻辑名称。
ReferencedAttribute 关联表主键的逻辑名称。
ReferencingEntity 包含查找列的关联表逻辑名称。
ReferencingAttribute 关联表中存储主表主键引用值的查找列逻辑名称。
IsHierarchical 该关系是否表示自引用层次结构关系
CascadeConfiguration 描述对父实体执行的操作的数据会级联到相关实体。
有关详细信息,请参阅 Cascade 配置。

一对多关系

包括以下 OneToManyRelationshipMetadata 类 属性:

资产 Description
ReferencingEntity 关联表的逻辑名称。
ReferencingAttribute 关联表中包含主表主键引用列的逻辑名称。
IsCustomizable 是否可以更改关系的属性。
ReferencedEntityNavigationPropertyName 此关系对应的 Web API 集合值导航属性的名称。
有关详细信息,请参阅 Web API 导航属性。
AssociatedMenuConfiguration 模型驱动应用程序使用的数据,用于控制是否以及如何从主实体在用户界面访问相关实体数据。

多对多关系

每个多对多关系包含 Entity1LogicalName 和 Entity2LogicalName。 本文档中,关系细节在当前表上下文中提供。 具体是 Entity1 还是 Entity2 并不重要。

对于每个多对多关系,包括以下 ManyToManyRelationshipMetadata 类 属性:

资产 Description
IntersectEntityName 支持该多对多关系的交叉表逻辑名称。
IsCustomizable 是否可以更改关系的属性。
SchemaName 关系模式名称。
IntersectAttribute(Entity1IntersectAttribute 或 Entity2IntersectAttribute) 交叉表中作为此类型记录主键的列名称。
NavigationPropertyName(Entity1NavigationPropertyName 或 Entity2NavigationPropertyName) 此关系对应的 Web API 集合值导航属性的名称。
更多信息:Web API 导航属性
AssociatedMenuConfiguration(Entity1AssociatedMenuConfiguration 或 Entity2AssociatedMenuConfiguration) 模型驱动应用程序用于控制是否及如何从当前表在 UI 中访问第二张表数据的参数。

当多对多关系发生自引用(如连接角色 (ConnectionRole) connectionroleassociation_association)的罕见情况时,会在属性名前添加 Entity1 或 Entity2 前缀。

资产 价值
Entity1IntersectAttribute 在交叉表中,作为第一表的此类型记录的主键列名称。
Entity2IntersectAttribute 在交叉表中,作为第二表的此类型记录的主键列名称。
Entity1NavigationPropertyName 作为第一表的此关系对应的 Web API 集合值导航属性名称。
Entity2NavigationPropertyName 作为第二表的此关系对应的 Web API 集合值导航属性名称。
Entity1AssociatedMenuConfiguration 模型驱动应用程序用于控制是否以及如何从本表(作为主表)在 UI 中访问次表数据的参数。
Entity2AssociatedMenuConfiguration 模型驱动应用使用的数据来控制第二个表数据是否以及如何从此表访问 UI 中的第二个表数据作为第二个表。