SharePoint Online:使用CSOM覆盖文档库中的文件内容

时间:2017-10-02 10:27:36

标签: sharepoint-online

我有一个由不同文件组成的文档库。我有一项任务是读取所有文件并覆盖其中的内容并在线上传回SharePoibnt。

我需要将此作为迁移过程,必须在AppUpgraded中完成。

我尝试使用file.SaveBinary(write.ToArray()),它传递代码但没有更新文件数据。

示例将不胜感激。

1 个答案:

答案 0 :(得分:-1)

这是我使用FileCreationInformation将本地文件上传到SharePoint Online的方式:

var list = cc.Web.Lists.GetByTitle(listTitle);
cc.Load(list);
cc.ExecuteQuery();

using (FileStream fs = new FileStream(filePath, FileMode.Open))
{
    FileCreationInformation fileInfo = new FileCreationInformation();
    fileInfo.ContentStream = fs;
    fileInfo.Url = fileName;
    fileInfo.Overwrite = true;

    var newFile = list.RootFolder.Files.Add(fileInfo);

    cc.Load(newFile);
    cc.ExecuteQuery();
}

您可以尝试从流和FileCreationInformation对象中创建File对象。您应该能够获得相同的结果。如果这不起作用,请告诉我。