2011-06-07 85 views
0

我們希望創建一個網頁,以列出當前訪問該頁面的用戶在所有sharePoint站點上的所有文檔庫。我們還希望爲用戶提供全站搜索。這是他們有權訪問的所有網站。Mysites喜歡在所有SharePoint網站上列出所有文檔庫的頁面?

我們目前沒有啓用Mysites,我們也不想。

Possilbe來編碼?

+0

另外,偶然有人得到SQL MSforeachdb,CAML,LINQ或SP對象模型代碼,這些代碼可以爲每個文檔庫生成一個URL列表,用戶可以在Farm上的所有網站上訪問該列表? – o365spo 2011-06-07 15:06:31

回答

1

所有網站搜索都很容易。如果您使用的是SharePoint 2007或2010的非免費版本,則該功能會被嵌入到產品中。用戶可以使用搜索範圍搜索SharePoint場中的所有內容。它會自動修剪用戶無法訪問的搜索結果。

至於您所有文檔庫的列表,這可能會非常費力地實時生成任何非平凡的SharePoint環境。您很可能必須提前收集此信息,然後在其他類似界面的Web部件中顯示相應的數據摘要。抓取每個Web應用程序和每個站點以及每個子站點,然後每個文檔庫的代碼並不困難。其實它非常簡單。有一點棘手的是,您需要爲每個列表收集ACL條目,以便您可以將它們與當前最終用戶進行比較。真正的技巧是ACL可能包含SharePoint組名稱和Active Directory組名稱,而不是單個最終用戶名稱。這會讓你的報告任務更加困難。

+0

那麼我們可以在一個特定的網站集合中搜索範圍,該集合在農場層面上報告調查結果?我認爲你在建立索引運行後每天晚上建立文檔庫列表是正確的。你會在SP對象模型中做到這一點嗎?試圖在SQL中執行它,因爲我想將它存儲在SQL表中。偶然知道哪些指南可能讓我開始使用這些指南? – o365spo 2011-06-09 17:37:56

+0

我不會嘗試通過直接的數據庫調用。數據庫模式沒有記錄,它很複雜,並且違反了您的支持合同。對象模型代碼非常簡單,它將非常適合您的需求。 – 2011-06-09 18:36:31

相關問題