Umbraco 4.6:按版本获取节点

时间:2012-04-05 17:53:02

标签: umbraco

我正在尝试获取已发布节点的先前版本以与当前节点进行比较。我找到了Document.GetContentFromVersion但似乎找不到NodeFactory中的等价物或将内容转换为Node类型的方法。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

NodeFactory中没有与Document.GetContentFromVersion等效的东西,因为NodeFactory从umbraco.config缓存中获取数据,而Document从数据库中提取数据(参见Difference Between Node and Document)。

您可以像使用文档或节点一样获取Content对象的属性:

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)
{
    ...
}