2017-01-15 6 views
0

単純なRazorテンプレートの問題。これは私のDNNページのリストをレンダリングする必要があります。DDRMenuはRazorテンプレートのすべてをレンダリングしません。 DNP

@using DotNetNuke.Web.DDRMenu; 
@using System.Dynamic; 
@inherits DotNetNuke.Web.Razor.DotNetNukeWebPage<dynamic> 
@{ 
    var root = Model.Source.root; 
} 
@helper RenderNodes(IList<MenuNode> nodes) { 
    if (nodes.Count > 0) { 
     <div id="dnnFooterMenu"> 
      <ul> 
       @foreach (var node in nodes) { 
        if (node.HasChildren()) { 
         <li> 
          <a href="#"><b>@node.Text</b></a> 
          @RenderChildNodes(node.Children) 
         </li> 
        } 
       } 
      </ul> 
     </div> 
    } 
} 
@helper RenderChildNodes(IList<MenuNode> nodes) { 
    if (nodes.Count > 0) { 
     <ul> 
      @foreach (var node in nodes) { 
       <li><a href="@node.Url">@node.Text</a></li> 
      } 
     </ul> 
    } 
} 
@RenderNodes(root.Children) 

それはレンダリングすべてがこれです:最初と最後のページには子を持たない

<div id="dnnFooterMenu"> 
    <ul> 
     </ul> 
</div> 

。私はここで何が欠けていますか?

答えて

0

申し訳ありませんが、私はこれを投稿したことを忘れています...問題は実際に私の.ascxのコントロールにあった。

<dnn:menu id="dnnNav" menustyle="nav" nodeselector=" メンバー " runat="server"/>

のでMenuNodeは文字通りリストする子供がなかった:私は、メニューの間違った親セットを持っていました。

0

スキンのnavフォルダにcsファイル(通常は "nav.cshtml")がありません。インストール用の.zipフォルダに含まれていない可能性があります。

関連する問題