Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Create a folder in document library using Sharepoint event receiver

I am using the following code to create a folder inside my document library. The event get triggered and executed till the last line of my code without any issues. However the folder is not getting created or listed in my document library.

public override void ItemAdded(SPItemEventProperties properties)
{
    base.ItemAdded(properties);        

    string strDashListRoot = "http://win-hmpjltdbh5q:37642";
    using (SPSite site = new SPSite(strDashListRoot))
    {
        using (SPWeb web = site.OpenWeb())
        {
            web.AllowUnsafeUpdates = true;                    

            SPList spl = web.Lists["client_documents"];
            spl.Items.Add("", SPFileSystemObjectType.Folder, "Helllworld");
            spl.Update();
            web.AllowUnsafeUpdates = false;
        }
    }           
}
like image 469
aarpey Avatar asked Sep 09 '26 20:09

aarpey


1 Answers

You need

var i = spl.Items.Add("", SPFileSystemObjectType.Folder, "Helllworld");
i.Update(); 

instead of

spl.Items.Add("", SPFileSystemObjectType.Folder, "Helllworld");
spl.Update();

(assuming your Add call is fine - it looks OK to me)

(Also, are you sure you need the AllowUnsafeUpdates handling? I wouldn't have expected it to be necessary when you're in an ItemAdded handler.)

like image 110
Rawling Avatar answered Sep 12 '26 11:09

Rawling