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按照某種方式分批後進行查詢。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章