【问题标题】:Sharepoint: Total count of filtered list via webservicesSharepoint:通过网络服务过滤的列表总数
【发布时间】:2014-07-07 06:09:40
【问题描述】:

在 SharePoint 2013 中,我使用 Web 服务来查询列表:

System.Xml.XmlNode node = myservice.GetListItems(listName, viewName, query, viewFields, rowLimit, queryOptions, null);

我使用 CAML 将过滤器应用于默认视图并限制返回的行。

这很好用;现在我想使用这个特定的过滤器设置来获取项目的总数,我该如何得到这个?

我知道我可以使用GetList 方法,但这会返回列表中所有项目的总数,而无需应用任何过滤器。

有没有办法获取通过网络服务过滤的列表总数?

【问题讨论】:

    标签: web-services list sharepoint count


    【解决方案1】:

    SharePoint 在查询中没有等效的COUNT 函数;如果您想要除项目总数之外的任何其他内容,则唯一的选择是执行过滤后的查询,然后计算返回的项目数。

    来自 SP2010 的类似问题(不幸的是,在 SP2013 中,CAML 规范在这方面没有改变):Determine Total Count Of Items Returned By SPQuery

    来自 SharePoint.stackexchange 的参考代码:https://sharepoint.stackexchange.com/questions/26150/is-it-possible-to-return-only-the-count-of-the-query

    【讨论】:

    • 感谢您的回答... 可惜SharePoint 没有提供这样的基本 功能:(
    • 同意 - 如果您正在创建一个大容量的解决方案,并且经常需要此类报告,您可能需要考虑使用事件接收器更新的设计模式,比如说跟踪每个列表项的 ID 和分析所需的任何其他列的 SQL 表。这样,您可以从同步的 SQL 表而不是直接从 SharePoint 列表构建和运行报告。
    猜你喜欢
    • 2010-11-21
    • 1970-01-01
    • 2014-02-15
    • 2023-03-08
    • 2012-02-05
    • 1970-01-01
    • 1970-01-01
    • 2017-01-01
    • 1970-01-01
    相关资源
    最近更新 更多