0

볼 수있는 권한이있는 모든 문서를 표시하는 재귀 메서드에서 작업하고 있습니다. 첫 번째 패스는 잘 작동하지만, 그 자체를 호출 할 때 반복적으로 현재 문서의 아이들의 문서 배열을 전달 그것은 오류가 발생합니다 : 여기문서 반환 시도 중 개체 오류 (Umbraco Document API)

Object reference not set to an instance of an object. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.

를 코드입니다 :

protected void Page_Load(object sender, EventArgs e) 
{ 
    lblTest.Text = "Data<br /><br />"; 
    Document[] releaseDocs = Document.GetRootDocuments(); 
    displayDocs(releaseDocs); 
} 
public void displayDocs(Document[] releaseDocs) 
{ 
    string docPermissions = null; 
    User currentUser = User.GetCurrent(); 
    foreach (var doc in releaseDocs) 
    { 
     docPermissions = currentUser.GetPermissions(doc.Path); 
     if ((docPermissions.Contains("F")) && (docPermissions.Contains("U"))) 
     { 
      lblTest.Text += "D/T: " + doc.CreateDateTime + "<br />\r\n"; 
      lblTest.Text += "Level: " + doc.Level + "<br />\r\n"; 
      lblTest.Text += "Text: " + doc.Text + "<br />\r\n"; 
      lblTest.Text += "<hr />\r\n"; 
      if (doc.HasChildren) 
      { 
       Document[] childDocs = Document.GetChildrenForTree(doc.Id); 
       displayDocs(childDocs); //error occurs here 
      } 
     } 
    } 
} 

답변

1

이 가능인가요 문서 .GetChildrenForTree (doc.Id) 메서드는 null을 반환합니까?

+0

나는 그것을 생각하고 그 주위에 시도/잡기를 떨어 뜨렸다. 그래도 여전히 나에게 실패하고있다. 또한 HasChildren이 호출되기 전에 true로 설정되었는지 확인했습니다. 당신이 그것에 의지 할 수는 없지만, 이론적으로 그것이 "있는"경우에는 null이 아니어야합니다. – Dexter

+0

이 질문은 our.umbraco.org에서 확인할 수 있습니다. – BeaverProj