Posted by: Shantham | March 31, 2008

Uploading File from Local Machine to SharePoint ListItem as an attachment

To attach the file from Local Machine to SharePoint ListItem as an attachment, Import the System.IO namespace to use the Stream Class to read the file contents.

Use System.Web.UI.WebControls.FileUpload control is named as fileUpload in code.

Sample code for uploading the file from Local Machine to ListItem attachments as follows,

//Check the FileUpload control has the file

if (fileUpload.PostedFile != null)

{item = list.Items.Add();

item[“Title”] = fileUpload.FileName;

//Read the Contents from the file in Local machine

Stream fs = fileUpload.PostedFile.InputStream;                   

byte[] fileContents = new byte[fs.Length];

fs.Read(fileContents, 0, (int)fs.Length);


// Add the file to the ListItem as an Attachment

SPAttachmentCollection attachments = item.Attachments;

string fileName = Path.GetFileName(fileUpload.PostedFile.FileName);

attachments.Add(fileName, fileContents); 



Read more…



  1. Is it possible to check out a file from sharepoint and modify it and check in back (Like in VSS). I have a requirement to modify a excel file in sharepoint and repost it again! is it possible! if yes kindly tell me how?

  2. Check below office links for Check-out and check-in a file without coding in sharepoint.

  3. Thanks for ur reply santhakumar!
    i want to do it thru coding! I actually knew to do it without coding!
    can u suggest a way for that

  4. No need to add reference to

    Single line of code
    item.Attachments.Add(fileUpload.FileName, fileUpload.FileBytes);

    Hope this helps.

    • That is correct. No need for
      I’ve triedd it and it works

      • Thanks!.. works amazing.

  5. Would it be possible to restrict the some of users not to open the attachment while viewing the list item.

  6. Thanks for your post. Can i ask you about this code using for the sandbox solution. i got FileName is Null.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s


%d bloggers like this: