Updating SPWeb.RootFolder.WelcomePage not working!

I was recently trying to programmatically set the default (welcome) page of a team site, but my changes weren’t taking effect. As it turns out, this code:

contextWeb.RootFolder.WelcomePage = rootFolder.Name + "/" + wikiFileName;
contextWeb.RootFolder.Update();

Needs to be changed to work with a local copy of an SPFolder. I haven’t used reflector but, i am guessing that on the ‘getter’ for SPWeb.RootFolder we are given a complete new instance every time. So the code now needs to be this – (thanks SharePoint):

SPFolder folder = context.Web.RootFolder;
folder.WelcomePage = rootFolder.Name + "/" + wikiFileName;
folder.Update();

Leave a Reply 0 comments

Leave a Reply: