Search code examples
c#sharepointupload

How do you upload a file to a document library in sharepoint?


How do you programmatically upload a file to a document library in sharepoint?

I am currently making a Windows application using C# that will add documents to a document library list.


Solution

  • You can upload documents to SharePoint libraries using the Object Model or SharePoint Webservices.

    Upload using Object Model:

    String fileToUpload = @"C:\YourFile.txt";
    String sharePointSite = "http://yoursite.com/sites/Research/";
    String documentLibraryName = "Shared Documents";
    
    using (SPSite oSite = new SPSite(sharePointSite))
    {
        using (SPWeb oWeb = oSite.OpenWeb())
        {
            if (!System.IO.File.Exists(fileToUpload))
                throw new FileNotFoundException("File not found.", fileToUpload);                    
    
            SPFolder myLibrary = oWeb.Folders[documentLibraryName];
    
            // Prepare to upload
            Boolean replaceExistingFiles = true;
            String fileName = System.IO.Path.GetFileName(fileToUpload);
            FileStream fileStream = File.OpenRead(fileToUpload);
    
            // Upload document
            SPFile spfile = myLibrary.Files.Add(fileName, fileStream, replaceExistingFiles);
    
            // Commit 
            myLibrary.Update();
        }
    }