1
我已通過覆蓋它來自定義工作箱。默認情況下,工作箱顯示特定工作流程狀態下的所有項目版本。 我只需要最後一個版本出現在工作箱中。 與DisplayStates(IWorkflow workflow, XmlControl placeholder)
方法玩過,但沒有運氣。Sitecore工作箱只顯示項目的最新版本
我該怎麼做?
我已通過覆蓋它來自定義工作箱。默認情況下,工作箱顯示特定工作流程狀態下的所有項目版本。 我只需要最後一個版本出現在工作箱中。 與DisplayStates(IWorkflow workflow, XmlControl placeholder)
方法玩過,但沒有運氣。Sitecore工作箱只顯示項目的最新版本
我該怎麼做?
你需要重寫DisplayStates()
方法和過濾DataUri[] items
陣列:
List<DataUri> filteredUriList = new List<DataUri>();
DataUri[] items = this.GetItems(state, workflow);
for (int index = offset; index < num; ++index)
{
Item obj = Sitecore.Context.ContentDatabase.Items[items[index]];
if (obj != null && obj.Versions.IsLatestVersion())
filteredUriList.Add(items[index]);
}
items = filteredUriList.ToArray();
非常感謝馬拉什。 – Dhanuka777
Sitecore使用this.GetItems(狀態,工作流)方法獲取項目。在我們的數據庫中,有700,000多個sitecore項目分配了工作流程狀態。 Sitecore是否在內部使用索引?我在公共網站上使用lucene索引。你認爲在工作箱內使用索引是否可行? – Dhanuka777
+++,還有一些關於「DataURI」的內容,如果我使用索引並返回一個item [],我怎樣才能將它轉換回DataUri。這是一個好方法嗎? – Dhanuka777