我在文档库中有一些从未签入的文件。我通过文档库设置页面或使用SPDocumentLibrary.CheckedOutFiles
有没有办法可以在不通过C#获取所有权的情况下下载这些文件。
答案 0 :(得分: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);
}
}