2009-06-02 39 views
1

我無法使用包含在位於根Web應用程序中的Web部件中的列表視圖來顯示文檔庫的內容。在另一個站點中顯示列表視圖Web部件的列表

下面是網站結構:

 
main_site 
    subsite1 
     Shared Documents 
    subsite2 
     Shared Documents 

我的WebPart位於main_site

在此Web部件中,我有一個Sharepoint ListViewWebPart,其中我想顯示來自subsite1的共享文檔,但它似乎不起作用。我得到以下錯誤:

List does not exist

The page you selected contains a list that does not exist. It may have been deleted by another user.

奇怪的是,當我調試,我可以看到SPList正確初始化幷包含我的列表的元素。但是在行Controls.Add(mylistview),是發生錯誤的地方。

這裏是我使用到列表綁定到我的ListView代碼:

SPList list = SPContext.Current.Site.AllWebs["subsite1"].Lists["Shared Documents"]; 

ListView lv = new ListView(); 
lv.ListId = list.ID.ToString(); 
lv.ViewId = list.DefaultView.ID.ToString(); 
lv.DataBind(); 

this.Controls.Add(lv); 

是否有人有一個合乎邏輯的解釋和解決這個問題?

回答

3

問題是該列表是在另一個網站。

可以使用ListViewWebPart引用來自同一網站集中其他網站的列表。您需要使用WebId屬性來執行此操作。這裏是a code example

另一種選擇是使用SharePoint Designer創建數據視圖Web部件。這將允許您使用來自其他站點或SharePoint Web服務器的列表來提取數據。結果與列表視圖Web部件類似,並且可以使用一些強大的功能。這是證明這一點的first blog post I found,應該有其他幾個。

最後,您可以使用內容查詢Web部件。你可能已經知道這一點了,它更多的是顯示和不處理數據。

編輯刪除不正確的信息。

+0

好的,這就是我所害怕的。 事情是,我想保持「編輯合適的,查看屬性,發送到......」的能力。 我是否仍然可以使用數據視圖Web部件獲得這些類型的東西,還是需要大量的定製? thx提前 – GillouX 2009-06-02 13:53:09

+0

它使用XSL變換(如CQWP)進行渲染,因此您可以在那裏獲得大量功能。然而,你尋找的開箱即用的東西需要一些工作或者是不可能的(我正在考慮'發送到')。 – 2009-06-02 14:11:05

+0

我想我會尋找一個更深的定製,甚至是一個全面的自定義界面來做到這一點。 thx的信息 – GillouX 2009-06-02 14:27:48

相關問題