2013-04-26 65 views
0

我試圖讓頁面的web部件管理器添加了我的應用程序。我怎樣才能獲得當前頁面服務器的相對Url?如何從App獲取WebPartManager頁面?

using (var clientContext = new ClientContext(SPHostUrl)) 
{ 
    var serverRelativeCurrentPageUrl = "/SitePages/MyPage.aspx"; 
    var file = clientContext.Web.GetFileByServerRelativeUrl(serverRelativeCurrentPageUrl); 
    var wpManager = file.GetLimitedWebPartManager(Microsoft.SharePoint.Client.WebParts.PersonalizationScope.Shared); 
    clientContext.Load(wpManager); 
    clientContext.ExecuteQuery(); 
} 

回答

0

默認情況下,沒有標記可以包含該頁面。如果您擁有佈局頁面,則一種方法是iframe將消息發佈到父窗口,然後佈局僅發佈值爲document.location的返回消息。

+0

無法獲取應用程序部件的所有者頁面URL:( – Warlock 2013-11-22 05:50:15

+0

但我發現您可以從查詢字符串獲取webPartId,這解決了我的問題。 – Warlock 2013-11-22 05:51:54