0

我正在尝试获取动态营销列表的成员列表。当它只有一个(或几个)列表时,我可以单独获取底层查询的结果。但是,当营销列表的数量增加时,一一抓取变得非常无效。

对于静态营销列表,我希望它应该是直截了当的。在基于我的QueryExpression对象中的联系人筛选与所有营销列表相对应的一组 guid 时,我应该能够获取实体联系人的所有实例(或用于创建它的任何基本类型) 。这是正确的认识吗?

(如何)我可以获取服务器上所有动态列表的所有底层成员吗?

在此处输入图像描述

编辑:这是自动生成的 fetch-XML。

<fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="false">
  <entity name="account">
    <attribute name="name" />
    <attribute name="primarycontactid" />
    <attribute name="telephone1" />
    <attribute name="accountid" />
    <order attribute="name" descending="false" />
  </entity>
</fetch>
4

1 回答 1

1

好吧,对于您的要求(结果中的非明确记录和保留成员所属的营销列表的名称)来说,组合 FetchXML 查询将太困难(如果可能的话)。请注意,根据文档FetchXML 查询只能针对一个根实体(例如帐户或联系人)运行,其他实体只能链接。由于您在数据库中的 Accounts 和 Marketing 列表之间没有直接链接(而不是您只有一个 FetchXML 字符串存储在 DB 中),因此您将无法为您的工作使用链接实体。

假设您现在通过 C# 代码执行此操作 - 这实际上是一个好方法。它可以让您更好地控制数据 - 您可以轻松地重新排列/组合/转换。我认为你不应该担心性能。多个 fetch xml 一个一个执行不会比一个巨大的组合可能花费的时间多得多。此外,如果您在 C# 中明智地实现集合操作,您可以获得相当不错的性能。我真的不认为组合巨大的 FetchXML 会带来任何性能优势,而只会带来维护困难。

于 2013-01-15T16:08:51.477 回答