小蜗牛的足迹

        I'm a slow walker, but I never walk backwards.

Set the Welcome Page in SharePoint through Code

默认情况下,SharePoint使用sitepages\Home.aspx作为welcome page,但有时我们需要使用定制页面作为welcome page。在SharePoint中, 设置Welcome Page的方式跟Web是否Publish有关,即SharePoint Server Publishing Infrastructure是否启动。

1. SharePoint Server Publishing Infrastructure这个feature没启动时的设置方式:

SPFolder rootFolder = web.RootFolder;
rootFolder.WelcomePage = "SitePages/customHomePage.aspx";
rootFolder.Update();
 
2.如果SharePoint Server Publishing Infrastructure已经启动,则使用一下方式进行设置,否则虽然后台代码能够设置成功,但是页面还是会报错误:The DataSourceID of 'TopNavigationMenu' must be the ID of a control of type IHierarchicalDataSource
  if (PublishingWeb.IsPublishingWeb(web))
   {
                    PublishingWeb publishingWeb = PublishingWeb.GetPublishingWeb(web);
                    SPFile welcomeFile = web.GetFile(squarePath);

                    publishingWeb.DefaultPage = welcomeFile;
                    publishingWeb.Update();
                }
               

posted on 2013-10-10 15:00  o_小蜗牛_o  阅读(286)  评论(0编辑  收藏  举报

导航