代码之家  ›  专栏  ›  技术社区  ›  Rich Bennema

spsitedataquery可以同时搜索列表和库吗?

  •  1
  • Rich Bennema  · 技术社区  · 14 年前

    我有以下代码:

    SPSiteDataQuery query = new SPSiteDataQuery();
    query.ViewFields = "<FieldRef Name=\"UniqueId\" />";
    query.Webs = "<Webs Scope=\"SiteCollection\" />";
    query.Query = "<Where<Eq><FieldRef Name='MyCustomField' /><Value Type='Boolean'>1</Value></Eq></Where>";
    query.Lists = "<Lists BaseType=\"1\" />";
    DataTable results = site.RootWeb.GetSiteData(query);
    

    这将搜索网站集中的所有文档库,但我也要搜索所有列表。有什么方法可以设置 Lists 属性同时搜索两个?

    1 回复  |  直到 14 年前
        1
  •  0
  •   Colin    14 年前

    我不相信有。

    SPSiteDataQuery一次针对1种特定的内容(即列表类型)。

    当需要来自不同类型内容的结果时,例如,共享一个公共自定义字段,在搜索中(在共享服务提供程序中)创建一个托管属性,然后使用 FullTextSqlQuery 类来查询所有内容(也可以跨网站集工作,因为它使用的是moss搜索索引)。