2012-04-30 4 views

답변

2

, 나는 SPSiteSystemAccount와의 인스턴스를 추천 할 것입니다 :

SPSite site = web.Site; 
Guid id = web.ID; 
SPUtility.ValidateFormDigest(); 
using (SPSite systemSite = new SPSite(site.ID, site.SystemAccount.UserToken)) 
{ 
    using (SPWeb systemWeb = systemSite.OpenWeb(id)) 
    { 
     // perform as site administrator 
    } 
} 
+0

은 '웹' 라인 SPSite 사이트 = this.Web.Site 아래에 컴파일 오류 위에 점점에 대한 정의가 포함되어 있지 않습니다; 나를 위해 시간을내어 주셔서 감사합니다. – Rushikesh

+0

원본 SPWeb이 속성이 아닌 변수가되도록 코드를 변경했습니다. 어떤 식 으로든 SPWeb 인스턴스가 필요합니다. –

0

난 당신의 코드에서 상승 된 권한으로 실행 추천 할 것입니다. 그러면 임시로 높은 권한이 실행되는 코드가 제공됩니다. 사이트를 열 었는지 확인하십시오.이 대리인 아래에서 웹 및 목록 개체가 열립니다. MSDN article 및 아래 샘플을 참조하십시오.

SPSecurity.RunWithElevatedPrivileges(delegate() 
{ 
    using (SPSite site = new SPSite(web.Site.ID)) 
    { 
    // implementation details omitted 
    } 
}) 
관련 문제