2016-11-06 105 views
0

我目前有2个页面在Umbraco上使用相同的局部视图,相关代码显示每个站点上的面包屑以显示主页和当前页面。下面的原始代码在Europa页面上工作正常,但它为Singapur页面提供了一个空例外。Umbraco局部视图呈现问题

我的代码更改已将空例外排序,但Europa页面现在不在右侧显示面包屑的第二部分,该部分显示当前页面。但新加坡页面显示两个面包屑罚款,因为它假设。

原始代码:

<div class="breadcrumb"> 
     <ul> 
      <li><a href="@viewModelMenu.Home.Url">@Umbraco.GetDictionaryValue ("Start page")</a></li> 
      <li><a @(!viewModelMenu.IsCurrentContinent ? "href="+ @viewModelMenu.Continent.Url : null)>@viewModelMenu.Continent.GetGermanyPageTitle()</a></li> 

@if (!viewModelMenu.IsCurrentContinent) 
      { 
       foreach (var parent in viewModelMenu.Parents) 
       { 
    <li><a href="@parent.Url">@(parent.GetGermanyPageTitle())</a></li> 
       } 
       <li> 
        <a> 
         @(Model.Content.GetGermanyPageTitle()) 
        </a> 
       </li> 
      } 
     </ul> 
    </div> 

是现在制作面包屑右侧没有出现欧罗巴页面上,但做工精细的Singapur页我的代码更改:

<div id="infomation" class="content-position"> 
    <div class="breadcrumb"> 
     <ul> 
@{ 
    var homeLink = viewModelMenu.Home.Url; 
    var homeText = Umbraco.GetDictionaryValue("Start page"); 

<li><a href="@viewModelMenu.Home.Url">@Umbraco.GetDictionaryValue("Start page")</a></li> 
var getPage = string.Empty; 
string link = null; 
if (!viewModelMenu.IsCurrentContinent) 
{ 
    if (viewModelMenu.Continent != null) 
    { 
     link = "href=" + viewModelMenu.Continent.Url; 
     getPage = viewModelMenu.Continent.GetGermanyPageTitle(); 
    } 
} 
} 
    @if (!viewModelMenu.IsCurrentContinent) 
      { 
       foreach (var parent in viewModelMenu.Parents) 
       { 
        <li><a href="@parent.Url">@(parent.GetGermanyPageTitle())</a></li> 
       } 
       <li> 
        <a> 
         @(Model.Content.GetGermanyPageTitle()) 
        </a> 
       </li> 
      } 
     </ul> 
    </div> 

工作痕迹: enter image description here 不工作面包屑: enter image description here 我想让我的代码在Europa页面上显示,就像它为Singapu一样r: enter image description here

回答

0

我的猜测是IsCurrentContinent方法对于Europa返回true,这意味着除了面包屑中的开始节点之外,其他任何东西都没有。