2010-01-12 3 views

답변

5

아래 코드는 저에게 효과적입니다. 이것은 forum post에서 가져 왔습니다. 게시 페이지가 기본 방문 (환영) 페이지로 설정된 경우 게시 페이지를 삭제할 수 없습니다.

try 
{ 
    SPSecurity.RunWithElevatedPrivileges(delegate() 
    { 
     using (SPSite site = new SPSite(p_sSitePath)) 
     { 
      using (SPWeb web = site.OpenWeb()) 
      { 
       PublishingWeb pubWeb = null; 
       if (PublishingWeb.IsPublishingWeb(web)) 
       { 
        pubWeb = PublishingWeb.GetPublishingWeb(web); 

        foreach (SPListItem currentItem in pubWeb.PagesList.Items) 
        { 
         if(PublishingPage.IsPublishingPage(currentItem)) 
         { 
          PublishingPage page = PublishingPage.GetPublishingPage(currentItem); 

          if (page.Name != pubWeb.DefaultPage.Name) 
          { 
           currentItem.File.Delete(); 
          } 
         } 
        }    
       } 
      } 
     } 
    }); 
} 
catch (Exception ex) 
{ 
} 
관련 문제