/// <summary> /// 获取上级Static的栏目 /// </summary> /// <param name="catId"></param> /// <returns></returns> public static Base_Catalog GetStaticParent(this Base_Catalog cat) { while (cat.ParentId != null) { var parent = SiteManager.Catalog.GetById(cat.ParentId.Value); if (parent == null) { break; } cat = parent; if (cat.State == ArticleState.Static || cat.ParentId == 0) { break; } } return(cat); }
/// <summary> /// 根据栏目获取所有下级子结点 /// </summary> /// <param name="cat"></param> /// <returns></returns> public static IEnumerable <Base_Catalog> GetDescendantByLang(this Base_Catalog cat) { return(SiteManager.Catalog.GetDescendantByLang(cat.Id)); }
/// <summary> /// 根据栏目获取子结点 /// </summary> /// <param name="cat"></param> /// <returns></returns> public static IEnumerable <Base_Catalog> GetChildrenByLang(this Base_Catalog cat) { return(SiteManager.Catalog.GetChildrenByLang(cat.Id)); }
/// <summary> /// 根据栏目获取它的某个指定名称的标签 /// </summary> /// <param name="cat"></param> /// <param name="extName"></param> /// <returns></returns> public static Base_CatalogExt GetExtByName(this Base_Catalog cat, string extName) { return(SiteManager.Catalog.GetAllExts(cat.Id) .FirstOrDefault(ext => ext.Name.Equals(extName, StringComparison.OrdinalIgnoreCase))); }