2010-04-06 117 views
0

我需要獲取所有日期和人員修改顯示的頁面,所有已發佈的更改和最終用戶可以看到他們之間的差異。 我的頁面是aspx連接到pageLayout其中是richhtmlfield與文章。 如何做到這一點?有可能這樣做嗎?在Sharepoint中獲取頁面狀態歷史記錄

回答

0

如果這適用於撰稿者,而頁面處於編輯模式,則他們可以從工具欄中選擇工具>版本歷史記錄。否則,您可以添加到版本頁面上的鏈接,提供給所有用戶:

<a href="/sites/mysite/_layouts/Versions.aspx?list=[GUID]&ID=[ID]&FileName=%2Fsites%2Fmysite%2FPages%2FcurrentPage%2Easpx>Modifications</a> 

您需要填寫手動列表,ID,文件名參數的值。自動生成的鏈接,我會建立一個產生在Page_Load中的URL如下自定義頁面佈局:

RevisionHistoryAction versions = new RevisionHistoryAction(); 
string url = versions.NavigateUrl; 

RevisionHistoryAction在Microsoft.SharePoint.Publishing.WebControls.EditingMenuActions命名空間。

+0

Thaks!所以我可以主動地訪問列表並檢索所有條目,然後以我自己的方式在我自己的控制下顯示。 如果我在屏幕上有我的aspx文件,並且我想訪問版本列表 - 如果我能夠通過SPContext.Current.File檢索當前頁面,那麼GUID和ID是什麼? 然後SPFile有版本成員 - 它是從鏈接這是相同的列表? – user307852 2010-04-07 19:00:44

+0

如果您想創建自己的控件,那麼我需要花一些時間在12 \ TEMPLATE \ LAYOUTS \ Versions.aspx下的12個配置單元中查看Versions.aspx。您還需要查看Reflector中的VersionsPage類。您可以在12 \ CONFIG \ BIN \ Microsoft.SharePoint.ApplicationPages.dll中找到該DLL。 – 2010-04-07 20:12:40