基於SharePoint文件庫的資源回收筒功能

來源:互聯網
上載者:User
基於文件庫通過事件處理常式製作sharepoint文件庫的資源回收筒功能。可供參考的文章如下:方法1:http://msdn.microsoft.com/msdnmag/issues/05/02/RecycleBinforWSS/toc.asp?frame=true
使用鏡像文件庫,主文件庫上傳文檔的時候同時儲存到鏡像文件庫裡,刪除主文件庫檔案同時講鏡像文件庫裡對應檔案移動到資源回收筒文件庫裡。 方法2:http://blogs.msdn.com/cjohnson/archive/2005/10/06/477544.aspx 在iis中載入自訂dll,在sharepoint之前處理刪除文檔請求,避免使用鏡像文件庫。減少冗餘資料。有範例程式但沒有源碼。 方法3:http://blogs.sqlxml.org/bryantlikes/archive/2005/02/14/2776.aspx 簡單的資料庫trigger。在這裡採用的方法為第一種。 原理簡述:開啟此功能的sharepoint網站上有多個主文件庫和一個鏡像文件庫、一個資源回收筒文件庫。主文件庫上傳或更新的時候,觸發DocRecycleHandler,將文件庫的內容同步到鏡像文件庫中。主文件庫可以有多個,在鏡像文件庫中用同名子檔案夾區分。當刪除主文件庫中的內容時,觸發DocRecycleHandler,將鏡像文件庫中對應內容移動到資源回收筒文件庫中。在資源回收筒文件庫中對某檔案進行“Restore”操作,觸發DocRestoreHandler,將此檔案恢複到對應主文件庫和鏡像文件庫中。 因為文件庫預設是沒有Restore操作的,所以我們可以通過重寫頁面的javascript來重載檔案標題的下拉式功能表。具體方法可參考上文提到的第一種方法的參考文章。 在把檔案夾從鏡像庫移動到資源回收筒時,要注意檔案夾在資源回收筒庫是否已經存在,因為SPFolder的MoveTo和CopyTo都沒有強制覆蓋的選項。我是通過一個簡單的遞迴重寫了CopyTo方法。 示範截屏:主文件庫中建立幾個測試檔案夾:
 在操作主文件庫的同時,事件觸發程式將鏡像文件庫內容與主文件庫同步: 在主文件庫的某檔案夾裡上傳一個檔案: 刪除這個檔案夾: 鏡像文件庫中對應檔案夾也相應刪除並轉移至資源回收筒文件庫: 在資源回收筒裡對某檔案使用Restore方法: 此檔案就被恢複回主文件庫中: 這就是一個比較完整的資源回收筒實施範例了。開發細節近期附上,不過要請示Kaneboy同學先。。。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.