Umbraco导航 - 部分视图

时间:2016-06-22 12:40:11

标签: asp.net-mvc razor umbraco

我的页面文档类型中有一个True / False编辑器,我正在使用if创建网站导航。

如果选中topNavigation复选框,则在导航中显示项目

@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@{
    var root = Umbraco.TypedContentAtRoot().First();
    var nodes = root.Children.Where(x => x.GetPropertyValue("topNavigation") != "True");

}


  <ul class="nav navbar-nav">
    @foreach (var page in nodes)
        {
        <p>@page.GetPropertyValue("topNavigation")</p>
        <li class="@(page.IsAncestorOrSelf(Model.Content) ? "current" : null)">
            <a href="@page.Url">@page.Name <span class="glyphicon glyphicon-chevron-down"></span></a>
        </li>
        }
    </ul>
@*}*@

我似乎无法与真实价值进行比较。

这显示了一切 -

var nodes = root.Children.Where(x => x.GetPropertyValue("topNavigation") != "True");

..而且这没什么显示

var nodes = root.Children.Where(x => x.GetPropertyValue("topNavigation") == "True");

即使选中了复选框。

1 个答案:

答案 0 :(得分:0)

您应该可以使用GetPropertyValue<bool>

var root = Umbraco.TypedContentAtRoot().First();
var nodes = root.Children.Where(x => x.GetPropertyValue<bool>("topNavigation"));