如何有效删除文档库中的所有文件?

Pau*_*nde 8 sharepoint document-library

我正在寻找一个清晰,完整的示例,通过Sharepoint对象模型以编程方式从特定文档库中删除所有文档.doclib不包含文件夹.我想完全删除文件(即我不希望它们在回收站中).

我知道SPWeb.ProcessBatchData,但不知何故它似乎永远不适合我.

谢谢!

Dan*_*son 8

我会坚持使用ProcessBatchData方法,也许这会有所帮助:

Vincent Rothwell已经涵盖了这一点:http: //blog.thekid.me.uk/archive/2007/02/24/deleting-a-considerable-number-of-items-from-a-list-in-sharepoint.aspx

否则我不确定其他建议是否有效,因为Foreach循环不会希望集合中的项目数随每次删除而变化.

你可能最好做一个反向循环(我没有测试这个代码,只是一个例子):

for (int i = SPItems.Length - 1; i >= 0; i--)
{
    SPListItem item = SPItems[i];
    item.File.Delete();
}
Run Code Online (Sandbox Code Playgroud)

  • 博客帖子的链接已被破坏. (4认同)
  • 而(list.Items.Count> 0){list.Items [list.Items.Count-1] .File.Delete();} (2认同)