Dynamics crm “如何检测”;“仅供内部使用”;来自Dynamics CRM元数据的实体

Dynamics crm “如何检测”;“仅供内部使用”;来自Dynamics CRM元数据的实体,dynamics-crm,Dynamics Crm,我正在尝试根据使用元数据Web服务获得的列表读取(FetchXml)所有实体的所有可读属性的内容 除了3个实体(“resourcegroupexpansion”、“workflowwaitsubscription”和“interprocesslock”)之外,它工作得很好,我系统地得到以下错误: <?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org

我正在尝试根据使用元数据Web服务获得的列表读取(FetchXml)所有实体的所有可读属性的内容

除了3个实体(“resourcegroupexpansion”、“workflowwaitsubscription”和“interprocesslock”)之外,它工作得很好,我系统地得到以下错误:

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <soap:Body>
    <soap:Fault>
      <faultcode>soap:Server</faultcode>
      <faultstring>Server was unable to process request.</faultstring>
      <detail>
        <error>
          <code>0x80040216</code>
          <description>An unexpected error occurred.</description>
          <type>Platform</type>
        </error>
      </detail>
    </soap:Fault>
  </soap:Body>
</soap:Envelope>
根据这一点,这3个实体仅用于内部使用,这可能解释了为什么我会出现错误(已经说过我能够读取其他“仅用于内部使用”的实体)

所以我的问题是:如何从元数据中检测哪些实体是“仅供内部使用”的,哪些不是?
当然,我可以根据文档对实体列表进行硬编码,但我觉得这并不令人满意。

不幸的是,没有标识“仅供内部使用”实体的标志

但我从XrmToolbox元数据浏览器中注意到一件事——实体的描述列中有15个实体的“仅供内部使用”文本

我们可以通过使用内部系统实体的唯一值标识和更新此字段(通过一些不受支持的方式,如导出解决方案、修改和重新导入)来利用相同的功能。然后,可以使用描述字段文本过滤掉这些内部实体


我从没试过这个。我将很快尝试更新我的答案。

对于CRM 2011,我有同样的问题。你有没有找到一种确定“仅供内部使用”字段的方法?仅供参考:我在网站上发布了一个类似的问题,得到了一些可能对某些人有所帮助的回复。