【问题标题】:Get ALL Entity Metadata in Dynamics CRM获取 Dynamics CRM 中的所有实体元数据
【发布时间】:2020-10-22 00:56:10
【问题描述】:

我想做的是:

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

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

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

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

附: 此案例适用于本地 crm。

【问题讨论】:

  • 这是内部部署的还是在线的?
  • 您在“所有元数据”中包含哪些内容?是实体和属性吗?还是表单、工作流、插件、视图、仪表板等?
  • @TobiasKildetoft 它在本地
  • @SergeyTunnik 我的意思是 Microsoft.Xrm.Sdk.Metadata.EntityMetadata 类可以表示的任何内容。我对 CRM 很陌生,所以请原谅我的无知(我正在研究它;)我相信这只是实体(及其属性等),因为文档声称 EntityMetadata 代表docs.microsoft.com/en-us/dotnet/api/…

标签: dynamics-crm microsoft-dynamics xrm fakexrmeasy


【解决方案1】:

为了所有看到这篇文章的人的利益

我的最终解决方案

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

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

【讨论】:

    【解决方案2】:

    如果我做对了,您需要使用 RetrieveAllEntitiesRequest 请求。 以下是更多详细信息:https://stackoverflow.com/a/29694213/2575544

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多