在示例代碼,你這是怎麼從.cshtml文件獲取主頁Umbraco 7 + Razor:如何通過ID獲取文檔/節點?
var homePage = CurrentPage.AncestorsOrSelf(1).First();
現在,我該如何獲得一個特定頁面/節點(不涉及當前頁面,如:新聞頁面)通過它的ID?
在示例代碼,你這是怎麼從.cshtml文件獲取主頁Umbraco 7 + Razor:如何通過ID獲取文檔/節點?
var homePage = CurrentPage.AncestorsOrSelf(1).First();
現在,我該如何獲得一個特定頁面/節點(不涉及當前頁面,如:新聞頁面)通過它的ID?
您可以使用完全相同的方法,但使用.Where(x => x.Id == newsPageId)
。
或者,您可以使用@Umbraco.TypedContent(newsPageId)
或。
直接的答案是Umbraco.TypedContent(id)。但是!如果你想從任何地方獲得「新聞」節點,我建議如下。使用ID對於一些多語言設置是有問題的,並且如果ID改變則它將停止工作。
// 1- Get root node
var site = Model.Content.AncestorOrSelf("Site");
// 2- Get news node
var news = site.Descendant("News");
這種方式更加動態的,你現在可以使用你的新聞點,以循環它的孩子,或任何你需要的。爲此,您需要爲「網站」和「新聞」類型設置特定的文檔類型。
希望這有助於!
你是對的,但問題明確指出Razor和.cshtml文件。如果你需要從另一個環境中回答,請提出問題:) – Digbyswift 2015-03-19 18:25:31