2009-12-09 103 views
2

我使用WSS3.0 API來獲取ASPX頁面中的所有Web部件。
下面是我的代碼:爲什麼ParameterizableWebPart會作爲ErrorWebPart返回?

   SPFile page = web.GetFile(pageGuid); 

       SPLimitedWebPartManager wpm = page.GetLimitedWebPartManager(PersonalizationScope.Shared); 
       WebPartFactory factory = new WebPartFactory(); 
       foreach (System.Web.UI.WebControls.WebParts.WebPart webpart in wpm.WebParts) 
       { 
        //Some other logic 
       } 

此代碼工作正常對於大多數Web部件。但對於ParameterizableWebPart,它總是返回一個ErrorWebPart。

該頁面配置正確,因爲我可以在資源管理器中查看所有報告。

你有沒有遇到過這個問題?或者我的代碼有問題?

任何意見表示讚賞。 謝謝。

回答

0

PerformancePoint Web部件是不同於常規Web部件的動物。有a great post on technet在談論這個,有更多信息的鏈接。他們是從充滿AJAX優雅的底層建築中修建而成的。這可能是您碰到該Web部件時出現錯誤的原因。

0

This article指出,當不從Web請求調用時,SPLimitedWebPartManager將返回ErrorWebParts而不是某些WebParts。也許這是你的情況的問題?