CSOM中分批查询一个SharePoint subsite下的List

最近的一个项目中,有一个频繁需要查询整个SharePoint站点下的subsite所有List的操作,客户的Information architecture设计的真心让人很无语,一个subsite下会塞进去上万个library, 最多的一个站点下会塞进去超过7万个library. 这个项目是data migration项目,Library是在这个过程中不断被程序新创建出来的。

出现的一个问题就是,我们发现再次查询所有List的时候,从O365端返回的就总是超时的信息。后来我们联系了微软O365 Support想看一下是否有什么解决办法。微软Support建议我们使用REST API,可以分批查询。由于我们项目中代码使用的是csom, 微软Support也给了下面的示例代码,通过LINQ,可以实现分批查询。

另外,由于CSOM只支持Take, 不支持Skip,所以程序需要结合示例代码,把所有Library按照某种方式分批后进行查询。

CSOM中分批查询一个SharePoint subsite下的List_第1张图片

 

你可能感兴趣的:(Office,365,SharePoint)