Ejemplo n.º 1
0
        /// <summary>
        /// 根据文章ID获取Tag列表
        /// </summary>
        /// <param name="articleTag"></param>
        /// <returns></returns>
        public static List <Tag> GetTagsByArticle(int articleID, bool cacheable)
        {
            List <Tag> tags         = null;
            string     tagsCacheKey = CacheKeyManager.GetTagArticleKey(articleID);

            if (HttpContext.Current != null)
            {
                tags = HttpContext.Current.Items[tagsCacheKey] as List <Tag>;
            }
            if (tags != null)
            {
                return(tags);
            }
            if (cacheable)
            {
                tags = HHCache.Instance.Get(tagsCacheKey) as List <Tag>;
            }
            if (tags == null)
            {
                tags = CommonDataProvider.Instance.GetTagsByArticle(articleID);
                //缓存
                if (cacheable)
                {
                    HHCache.Instance.Insert(tagsCacheKey, tags, 1);
                }
                if (HttpContext.Current != null)
                {
                    HttpContext.Current.Items[tagsCacheKey] = tags;
                }
            }
            return(tags);
        }
Ejemplo n.º 2
0
 /// <summary>
 /// 更新文章Tag(tagList使用;分隔)
 /// </summary>
 /// <param name="articleID"></param>
 /// <param name="tagList"></param>
 public static void UpdateTagArticle(int articleID, string tagList)
 {
     CommonDataProvider.Instance.UpdateTagArticle(articleID, tagList);
     HHCache.Instance.Remove(CacheKeyManager.GetTagArticleKey(articleID));
     HHCache.Instance.Remove(CacheKeyManager.GetTagKey());
 }