【问题标题】:Umbraco partial view rendering issueUmbraco 局部视图渲染问题
【发布时间】:2016-11-06 18:49:00
【问题描述】:

我目前有 2 个页面在 Umbraco 上使用相同的局部视图,并且有问题的代码在每个站点上显示面包屑以显示主页和它所在的当前页面。下面的原始代码在 Europa 页面上运行良好,但是它为 Singapur 页面提供了一个空异常。

我的代码更改已对 null 异常进行了排序,但是 Europa 页面现在没有在右侧显示面包屑的第二部分,该部分显示了它所在的当前页面。但是 Singapur 页面显示两个面包屑都很好,因为它是假设的。

原码:

<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>

我的代码更改现在使右侧的面包屑不会出现在 Europa 页面上,但在 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>

工作面包屑: 不工作的面包屑: 我希望我的代码在 Europa 页面上显示,就像在新加坡一样:

【问题讨论】:

    标签: c# razor umbraco partial-views


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-05
      • 1970-01-01
      相关资源
      最近更新 更多