2012-04-05 3 views
0

게시 된 노드의 이전 버전을 현재 노드와 비교하려고합니다. Document.GetContentFromVersion을 찾았지만 NodeFactory에서 해당 항목을 찾지 못하거나 Content를 Node 유형으로 변환하는 방법을 찾을 수 없습니다. 누구든지 도와 줄 수 있습니까?Umbraco 4.6 : 버전으로 노드 가져 오기

답변

1

NodeFactory에 Document.GetContentFromVersion과 동일한 기능이 없으므로 NodeFactory는 해당 데이터를 umbraco.config 캐시에서 가져오고 Document는 데이터를 데이터베이스에서 가져옵니다 (Difference Between Node and Document 참조).

당신은 당신이 문서 또는 노드에서와 같은 방식으로 객체 콘텐츠의 속성을 얻을 수 있습니다 : 비교를 위해

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

내가 생각한 것입니다. 내가 요청한 이유는 현재 인수에 Node 유형을 사용하는 메소드를 재사용하기를 바랬다는 것입니다. 이 고양이를 껍질을 벗기는 몇 가지 방법이 있습니다. 나는 그것이 내가 놓쳤던 단순한 타입 캐스트 일 것이기를 바랄 뿐이었다. :-) 감사. – user1315940

관련 문제