在 Dynamics CRM 中获取所有实体元数据

Get ALL Entity Metadata in Dynamics CRM

我想做的是:

  1. 从 CRM 中检索所有元数据。
  2. 序列化该元数据并将其存储在文件中。
  3. 稍后反序列化该元数据并将其发送到 XrmFakeEasy 以进行单元测试。

第 2 步和第 3 步已完成,但我不知道如何完成第 1 步。 我花了一些时间在代码和 Google 上闲逛,但仍然感到困惑。

我们正在使用 .Net,所以我需要读取所有实体元数据(类型:Microsoft.Xrm.Sdk.Metadata.EntityMetadata)。

如果有人知道如何执行此操作或可以指出 API 的方向(我一直找不到),请告诉我。

P.S。 此案例适用于本地 crm。

如果我做对了,您需要使用 RetrieveAllEntitiesRequest 请求。 以下是更多详细信息:

为了让遇到此问题的任何人受益 post,这里是

我的最终解决方案

public static EntityMetadata[] GetMetadata(IOrganizationService crmService)
{
    var request = new RetrieveAllEntitiesRequest
    {
        EntityFilters = EntityFilters.All
    };

    var response = (RetrieveAllEntitiesResponse) crmService.Execute(request);
    return response.EntityMetadata;
}