我很新的SharePoint開發,並嘗試使用SharePoint 2010客戶端對象模型來讀取WebPart的內容。下面是我在做什麼來查詢的WebPart內容:如何使用SharePoint客戶端OM讀取WebPart內容?
ClientContext ctx = new ClientContext("http://foo");
File home = ctx.Web.GetFileByServerRelativeUrl("/SitePages/Page.aspx");
var wpm = home.GetLimitedWebPartManager(PersonalizationScope.Shared);
var query = wpm.WebParts.Include(wp => wp.Id, wp => wp.WebPart));
var webPartDefenitions = ctx.LoadQuery(query);
ctx.ExecuteQuery();
的問題是,我所得到的結果是它簡單地包括ID和Web部件的一些基本信息(如所有的WebParts列表標題),但我需要閱讀WebPart本身的XML內容,而不是閱讀該WebPart的基本定義。
什麼是最好的方式來閱讀WebPart的內容?
感謝您的幫助提前。
PS。
根據Trikks的評論,我檢查了webpart的內容。內容似乎不受任何列表或庫的約束。那裏有一些自定義數據屬性。下面是示例:
<webPart xmlns="http://schemas.microsoft.com/WebPart/v3">
<metaData>
<type name="NS.SPS2010.Internet.WebParts.VenueDetails.VenueDetails, NS.SPS2010.Internet.WebParts, Version=1.0.0.0, Culture=neutral, PublicKeyToken=89259c78cb06b3885" />
</metaData>
<data>
<properties>
<property name="WhenDetail" type="string">Monday 12:PM</property>
<property name="WhereDetail" type="string">London</property>
</properties>
</data>
</webPart>
我真正尋找的,正在訪問的WhenDetail和WhereDetail屬性的值。
要理解這一點,你需要來形容首先,我用下面的代碼獲取的Web部件的詳細信息列表您的網頁部分以及它獲取數據的位置。通常,webparts是顯示SharePoint中列表和庫的數據的模塊,通常不會嘗試訪問webpart內的數據。 – 2012-08-05 21:00:51
謝謝Trikks。我將檢查如何訪問底層的數據塊並在之後更新問題。 – ALEXIX 2012-08-05 23:17:39