0

我在文档库中有一些从未签入的文件。我有可以通过文档库设置页面或在 c# 中使用的文件列表SPDocumentLibrary.CheckedOutFiles

有没有一种方法可以让我下载这些文件而无需通过 C# 获取它们的所有权。

4

1 回答 1

0

如果您从 SharePoint 下载文件,您不会获得所有权。如果您使用的是 SharePoint CSOM API,您的代码如下所示:

using (var clientContext = new ClientContext(url))
        {
            clientContext.Credentials = creds;

            var list = clientContext.Web.Lists.GetByTitle(listTitle);
            var listItem = list.GetItemById(listItemId);
            clientContext.Load(list);
            clientContext.Load(listItem, i => i.File);
            clientContext.ExecuteQuery();

            var fileRef = listItem.File.ServerRelativeUrl;
            var fileInfo = Microsoft.SharePoint.Client.File.OpenBinaryDirect(clientContext, fileRef);
            var fileName = Path.Combine(filePath,(string)listItem.File.Name);
            using (var fileStream = System.IO.File.Create(fileName))
            {

                fileInfo.Stream.CopyTo(fileStream);
            }
        }
于 2015-05-21T05:41:12.570 回答