0
我想要獲取已發佈節點的先前版本,以便與當前節點進行比較。我找到了Document.GetContentFromVersion,但似乎無法在NodeFactory中找到等價物或將Content轉換爲Node類型的方法。誰能幫忙?Umbraco 4.6:通過版本獲取節點
我想要獲取已發佈節點的先前版本,以便與當前節點進行比較。我找到了Document.GetContentFromVersion,但似乎無法在NodeFactory中找到等價物或將Content轉換爲Node類型的方法。誰能幫忙?Umbraco 4.6:通過版本獲取節點
由於NodeFactory從umbraco.config緩存中獲取其數據,並且Document從數據庫中獲取數據(參見Difference Between Node and Document),因此NodeFactory中沒有與Document.GetContentFromVersion等效的內容。
您可以在內容的屬性得到對象,你會與一個文檔或節點以同樣的方式:
var old = Document.GetContentFromVersion(version);
var oldProperty = old.getProperty("propertyAlias");
對於比較, 節點:
var nodeProperty = node.GetProperty("propertyAlias");
if (oldProperty.Value == nodeProperty.Value)
{
...
}
文件:
var docProperty = node.getProperty("propertyAlias");
if (oldProperty.Value == docProperty.Value)
{
...
}
這就是我的想法。我問的原因是我希望重複使用一個目前爲其參數採用Node類型的方法。有幾種方法來剝皮這隻貓。我只是希望這是一個簡單的類型演員,我失蹤了。 :-) 謝謝。 – user1315940 2012-04-05 21:09:52