使用 MetdataId 查找已删除属性的属性名称

Use MetdataId to find the Attribute Name of a deleted attribute

当我使用 RetrieveMetadataChangesRequestRetrieveMetadataChangesResponse returns EntityMetadataDeletedMetadata 查询元数据时。 DeletedMetadata只returnsMetadataId.

有没有办法在不知道实体的情况下获取属性的元数据?即使只是属性名称也可以。

RetrieveAttributeRequest 我认为只有当属性存在并且你有 entitylogicalname.

时才有效

不,唯一可用的信息是 MetadataId。

引用自SDK

This collection is a dictionary of GUID values using a DeletedMetadataFilters as a key. The GUID values represent MetadataId values of the metadata items.

查看 SDK 的另一部分专门解决了这个问题:

You will also use DeletedMetadataFilters enumeration as a key to the RetrieveMetadataChangesResponse.DeletedMetadata to filter the GUID values found in the RetrieveMetadataChangesResponse.DeletedMetadata property. When you design a metadata cache you will want to use the MetadataId for each item so that you can identify deleted metadata items and remove them.

因此,作为开发人员,您应该填充应用程序感兴趣的元数据缓存。您可以查询 CRM 元数据以查找更改和删除 - 但在删除的情况下,您有责任在缓存中收集元数据。