【问题标题】:Find document type in complex structure Umbraco 7在复杂结构 Umbraco 7 中查找文档类型
【发布时间】:2015-09-27 15:53:58
【问题描述】:

我的内容结构如下。

    • 网站 A
      • 首页
        • 第 1 页
        • 第 2 页
        • 第 N 页
    • 网站 B
      • 首页
    • 网站 C
      • 首页

每个Home 文档类型都连接到一个主布局模板。 在我的主布局中,我尝试通过编写此代码来找到 Home 节点。

var home = Model.Content.Siblings().FirstOrDefault(x => x.DocumentTypeAlias == "Home");

当我在Home 节点上时,这有效,但当我去前。 Page 1 我得到一个例外,因为Home 不是Page 1 的兄弟。

然后我尝试了这个。

var home= Umbraco.TypedContentAtXPath("//Home").FirstOrDefault();

当我在Website A 时,这很有效,因为它返回了第一个节点。 但是在Website B 时,我仍然得到Website A 节点,这是错误的。

关于如何解决这个问题的任何提示?

【问题讨论】:

    标签: razor umbraco umbraco7


    【解决方案1】:

    有几种不同的方法可以实现这一点,但以下是最简洁的:

    var home = Model.Content.AncestorsOrSelf("Home").FirstOrDefault();
    

    【讨论】:

      【解决方案2】:

      我找到了解决办法:

      var home = Model.Content.AncestorOrSelf(2).Children().FirstOrDefault(x => x.DocumentTypeAlias == "Home");
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-10-14
        相关资源
        最近更新 更多