如何在联机Sharepoint上将文件上载到团队站点(Office 365)

时间:2016-06-19 01:00:46

标签: c# sharepoint-online

使用C#如何将文档添加到SharePoint Online中的团队网站上的“文档”Web部件?

我打算从内部网运行我的代码。下面的代码看起来很有希望但抛出了Microsoft.SharePoint.Client.IdcrlException。 Cleary我没有正确认证,但我哪里出错?

        using (ClientContext clientContext = new ClientContext("https://MyOrg.sharepoint.com/sites/MyTeamSite/"))
        {
            SecureString passWord = new SecureString();
            foreach (char c in "password".ToCharArray()) 
                passWord.AppendChar(c);
            clientContext.Credentials = new SharePointOnlineCredentials("myEmail@MyOrg.com", passWord);
            Web web = clientContext.Web;
            FileCreationInformation newFile = new FileCreationInformation();
            newFile.Content = System.IO.File.ReadAllBytes(@"c:\temp\test.txt");
            newFile.Url = "test.txt";

            List docs = web.Lists.GetByTitle("Documents");
            Microsoft.SharePoint.Client.File uploadFile = docs.RootFolder.Files.Add(newFile);
            clientContext.ExecuteQuery();
        }

1 个答案:

答案 0 :(得分:1)

您的代码似乎没问题。但您使用的方法仅支持小于2MB的文件。这是由于信息从客户端发送到服务器的方式。问题是由于我们正在使用FileCreationInformation对象的Content属性。如果您需要大于2MB的上传文件,请查看Large file upload with CSOM,其中提供了3个上传大文件的选项。