如何通过SharePoint搜索获得托管属性的唯一值?

4
我正在构建一个我的组织的电话目录(一个访问search.asmx web服务的AJAX应用程序)。我想显示一个列表框,用户可以选择一个部门(存储在托管属性Department中)。为了填充列表框的值,我需要以某种方式选择该属性的所有不同值。通过search.asmx web服务是否可能实现? 我找到的: - 一篇文章指出这是可能的,但它没有使用web服务接口 - 微软的白皮书指出:“如果协议客户端指定了至少一个属性,则必须还指定Path属性。如果没有,则协议服务器必须返回状态代码“ERROR_BAD_QUERY”。” 这两个发现有些不一致(而且,是的,搜索确实返回ERROR_BAD_QUERY)。

大多数API可以通过Web服务完成。我会检查一下是否可以将该代码转换。 - Jonesie
1个回答

0

为什么要麻烦地检查 Web 服务或使它变得复杂呢?

  1. 将所有属性获取到 DataTable 中。
  2. 然后创建一个 DataView,然后可以在所需列上应用 DISTINCT。
  3. 最后将其用于绑定到您的列表框。

1
谢谢,这个想法不错。问题是,我正在寻找一种有效的解决方案。当您选择数据存储中的所有项目时,SharePoint搜索引擎会变慢。因此,唯一的选项是,如果我每天加载所有项目并将列表存储在缓存中,这样才能起作用。 - naivists

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接