当我尝试在ASP.NET C#中渲染树视图时,出现异常System.StackOverflowException

问题描述

| 我有树视图。为了渲染儿童视图,我每次都会为父母的儿童控件调用部分控件。 有人可以告诉我我该怎么做,然后才不会导致System.StackOverflowException
  <ul class=\"children\">
        @foreach (var v in vat)
        { 
            <li>
                <label>
                    <input type=\"checkBox\" value=\"@v.ID\" />@v.Name
                </label>
            </li>
            if (cat.Child.Count > 0)
            { 
            @Html.Partial(\"xxxx/views/partials/Childcats.cshtml\",cat.Child)
            }
        }
    </ul>
    

解决方法

        在您的代码中是循环引用-当树中的某个节点引用较早的节点时(最可能的原因)。其他可能性-您使用的树太深并且递归时:堆栈溢出。