/// <summary> /// 获取当前内容类型对应数据 /// </summary> /// <param name="contentType"></param> /// <returns></returns> public static ContentDetailInfo GetModel(string contentType) { ContentDetail bll = new ContentDetail(); SqlParameter parm = new SqlParameter("@TypeCode", SqlDbType.NVarChar, 50); parm.Value = contentType; if (!enableCaching) { return(bll.GetList("and ct.TypeCode = @TypeCode ", parm).FirstOrDefault()); } string key = "contentDetail_single_" + contentType + ""; ContentDetailInfo data = (ContentDetailInfo)HttpRuntime.Cache[key]; if (data == null) { data = bll.GetList("and ct.TypeCode = @TypeCode ", parm).FirstOrDefault(); AggregateCacheDependency cd = DependencyFacade.GetContentDetailDependency(); HttpRuntime.Cache.Add(key, data, cd, DateTime.Now.AddHours(contentDetailTimeout), Cache.NoSlidingExpiration, CacheItemPriority.High, null); } return(data); }
private void Bind() { //查询条件 GetSearchItem(); ContentDetail bll = new ContentDetail(); rpData.DataSource = bll.GetList(pageIndex, pageSize, out totalCount, sqlWhere, parms == null ? null : parms.ToArray()); rpData.DataBind(); ltrMyData.Text = "<div id=\"myDataForPage\" style=\"display:none;\">[{\"PageIndex\":\"" + pageIndex + "\",\"PageSize\":\"" + pageSize + "\",\"TotalRecord\":\"" + totalCount + "\",\"QueryStr\":\"" + queryStr + "\"}]</div>"; }
/// <summary> /// 获取数据分页列表,并返回所有记录数 /// </summary> /// <returns></returns> public static List <ContentDetailInfo> GetList(int pageIndex, int pageSize, out int totalCount, string contentType) { totalCount = 0; if (string.IsNullOrEmpty(contentType)) { throw new ArgumentException("参数值不能为空", contentType); } ContentDetail bll = new ContentDetail(); SqlParameter parm = new SqlParameter("@TypeCode", SqlDbType.VarChar, 36); parm.Value = contentType; if (!enableCaching) { return(bll.GetList(pageIndex, pageSize, out totalCount, "and ct.TypeCode = @TypeCode", parm)); } string key = "contentDetails_" + contentType + ""; string keyCount = "contentDetailCount_" + contentType + ""; List <ContentDetailInfo> data = (List <ContentDetailInfo>)HttpRuntime.Cache[key]; if (HttpRuntime.Cache[keyCount] != null) { totalCount = (Int32)HttpRuntime.Cache[key]; } if (data == null) { data = bll.GetList(pageIndex, pageSize, out totalCount, "and ct.TypeCode = @TypeCode", parm); AggregateCacheDependency cd = DependencyFacade.GetContentDetailDependency(); HttpRuntime.Cache.Add(key, data, cd, DateTime.Now.AddHours(contentDetailTimeout), Cache.NoSlidingExpiration, CacheItemPriority.High, null); HttpRuntime.Cache.Add(keyCount, totalCount, cd, DateTime.Now.AddHours(contentDetailTimeout), Cache.NoSlidingExpiration, CacheItemPriority.High, null); } return(data); }