2014-04-12 41 views

回答

3

如果你在所有的在CMS中定義的類別,然後從首先獲取根類別開始,並且所有它是子級。

Category rootCategory = Category.GetRoot(); 
CategoryCollection childCategories = rootCategory.Categories; 
foreach (Category category in childCategories) 
{ 
    // do whatever 
} 

如果您只想檢索當前頁面上選定的類別,則遍歷當前頁面上的Category屬性。它返回一個CategoryList對象,其中包含所選類別的Id。

foreach (int catId in CurrentPage.Category) 
{ 
    Category category = Category.Find(catId); 
    // do whatever 
} 
+3

'Category.GetRoot()'是過時按照Episerver 9.0 – Azimuth

2

由於Category.GetRoot()被標記爲過時的,該溶液是按照Episerver 9更合適:

var categoryRepo = ServiceLocator.Current.GetInstance<CategoryRepository>(); 
var rootCategory = categoryRepo.GetRoot(); 
CategoryCollection childCategories = rootCategory.Categories; 
foreach (Category category in childCategories) 
{ 
// do whatever 
} 
相關問題