Sharepoint从文档库中删除文件

时间:2013-05-06 14:05:01

标签: file sharepoint delete-file

我不知道我做错了什么,我无法删除文件,我正在使用控制台应用程序,方法SPFile.Delete()什么都不做。

以下是一些代码:

for (int ii = web.Folders[url + documentsfolder].ItemCount - 1; ii >= 0; ii--)
                        {
                            SPFile file = web.GetFile(web.Folders[url + documentsfolder].Files[ii].UniqueId);
                            if (file.Exists)
                            {
                                file.Delete();
                            }

                        }

它不会抛出异常。它只是在第一个文件中停止,我不知道为什么。

希望你能帮忙

1 个答案:

答案 0 :(得分:2)

您好以下是删除共享文档的文件夹或文件的代码段。这可能会为您提供使用正确命令 DeleteItemById 进行删除的线索。

$web = Get-SPWeb -Identity "http://sharepoint2010/myweb/"
$list = $web.GetList("http://sharepoint2010/myweb/Shared%20Documents/")

function ProcessFolder {
    param($folderUrl)
    $folder = $web.GetFolder($folderUrl)
    foreach ($file in $folder.Files) {

        #Delete file by deleting parent SPListItem
        $list.Items.DeleteItemById($file.Item.Id)
    }
}

#Collect files to delete
ProcessFolder($list.RootFolder.Url)
#Download files in folders
foreach ($folder in $list.Folders) {
    ProcessFolder($folder.Url)
}

#Delete folders
foreach ($folder in $list.Folders) {
    try {
        $list.Folders.DeleteItemById($folder.ID)
    }
    catch {
        #Deletion of parent folder already deleted this folder
        #I really hate this
    }
}