0

我有一个借助 .NET Framework 4.7.2 制作的小型控制台应用程序。其目的是将 PDF 文件上传到 SharePoint 2019 网站。有一个 2 MB 的文件大小限制,我找不到避免的方法。错误信息如下:

请求消息太大。服务器不允许大于 2097152 字节的消息。

我已经尝试了本文中的建议-> https://docs.microsoft.com/en-us/sharepoint/dev/solution-guidance/upload-large-files-sample-app-for-sharepoint

我的代码中缺少 Microsoft.SharePoint.Client的ContentStream属性。FileCreationInformation我确保我使用了正确的命名空间,并且我还拥有最新版本的 dll。后来我发现这篇文章是在 2013 版本上完成的,所以实践显示和过时的可能性很大。

这是我尝试上传文件的方式:

 Folder folder = context.Web.GetFolderByServerRelativeUrl(path);
 FileCreationInformation FileToUpload = new FileCreationInformation();
                    
 FileToUpload.Content = System.IO.File.ReadAllBytes(file.FullName);
 FileToUpload.Url = AccountList.RootFolder.ServerRelativeUrl + filePath);
 FileToUpload.Overwrite = true;

 folder.Files.Add(FileToUpload);
 folder.Update();
 AccountList.Update();
 context.ExecuteQuery();

正如我已经说过的,我想使用ContentStream属性而不是Content避免 2 MB 异常,但它可能已过时,因为我无法获得此属性。

我的问题是,有没有办法绕过 2 MB 文件上传限制?

4

1 回答 1

0

事实证明,我必须安装一个额外的 Nuget 包才能ContentStream看到FileCreationInformation. 当我用Content财产替换财产时,我的问题立即消失了ContentStream

Nuget 包名称:Microsoft.SharePoint2019.CSOM
安装命令:Install-Package Microsoft.SharePoint2019.CSOM -Version 16.0.10337.12109

于 2021-03-24T06:01:01.117 回答