Esempio n. 1
0
        /// <summary>自动排序,如果使用了缓存,保存成功后会清空本表的所有缓存记录,然后重新加载进缓存</summary>
        /// <param name="page">当前页面指针</param>
        /// <param name="strWhere">附加Where : " sid=1 "</param>
        /// <param name="isExistsMoreLv">是否存在多级分类,一级时,请使用false,多级使用true,(一级不包括ParentID字段)</param>
        /// <param name="pid">父级分类的ParentID</param>
        /// <param name="fieldName">字段名:"SortId"</param>
        /// <param name="fieldParentId">字段名:"ParentId"</param>
        /// <returns>更新成功返回true,失败返回false</returns>
        public bool UpdateAutoSort(Page page, string strWhere = "", bool isExistsMoreLv = false, int pid = 0, string fieldName = "Sort", string fieldParentId = "ParentId")
        {
            //更新排序
            if (CommonBll.AutoSort("Id", "Article", strWhere, isExistsMoreLv, pid, fieldName, fieldParentId))
            {
                //判断是否启用缓存
                if (CommonBll.IsUseCache())
                {
                    //删除所有缓存
                    DelAllCache();
                    //重新载入缓存
                    GetList();
                }

                //添加用户操作记录
                CommonBll.WriteLog("{0}对Article表进行了自动排序操作!");
                //UseLogBll.GetInstence().Save(page, "{0}对Article表进行了自动排序操作!");

                return(true);
            }

            return(false);
        }
Esempio n. 2
0
        /// <summary>
        /// 保存列表排序,如果使用了缓存,保存成功后会清空本表的所有缓存记录,然后重新加载进缓存
        /// </summary>
        /// <param name="page">当前页面指针</param>
        /// <param name="grid1">页面表格</param>
        /// <param name="tbxSort">表格中绑定排序的表单名</param>
        /// <param name="sortName">排序字段名</param>
        /// <returns>更新成功返回true,失败返回false</returns>
        public bool UpdateSort(Page page, FineUI.Grid grid1, string tbxSort, string sortName = "Sort")
        {
            //更新排序
            if (CommonBll.UpdateSort(page, grid1, tbxSort, "Article", sortName, "Id"))
            {
                //判断是否启用缓存
                if (CommonBll.IsUseCache())
                {
                    //删除所有缓存
                    DelAllCache();
                    //重新载入缓存
                    GetList();
                }

                //添加用户操作记录
                CommonBll.WriteLog("{0}更新了Article表排序!");
                //UseLogBll.GetInstence().Save(page, "{0}更新了Article表排序!");

                return(true);
            }

            return(false);
        }
Esempio n. 3
0
        /// <summary>
        /// 删除Article表所有记录
        /// </summary>
        /// <param name="page">当前页面指针</param>
        /// <param name="isAddUseLog">是否添加用户操作日志</param>
        public void DeleteAll(Page page, bool isAddUseLog = true)
        {
            //设置Sql语句
            var sql = string.Format("delete from {0}", ArticleTable.TableName);

            //删除
            var delete = new DeleteHelper();

            delete.Delete(sql);

            //判断是否启用缓存
            if (CommonBll.IsUseCache())
            {
                //清空当前表所有缓存记录
                DelAllCache();
            }

            if (isAddUseLog)
            {
                //添加用户操作记录
                CommonBll.WriteLog("{0}删除了Article表记录!");
                //UseLogBll.GetInstence().Save(page, "{0}删除了Article表所有记录!");
            }
        }
Esempio n. 4
0
        /// <summary>
        /// 删除Article表记录
        /// </summary>
        /// <param name="page">当前页面指针</param>
        /// <param name="id">记录的主键值</param>
        /// <param name="isAddUseLog">是否添加用户操作日志</param>
        public void Delete(Page page, int id, bool isAddUseLog = true)
        {
            //设置Sql语句
            var sql = string.Format("delete from {0} where {1} = {2}", ArticleTable.TableName, ArticleTable.Id, id);

            //删除
            var delete = new DeleteHelper();

            delete.Delete(sql);

            //判断是否启用缓存
            if (CommonBll.IsUseCache())
            {
                //删除缓存
                DelCache(id);
            }

            if (isAddUseLog)
            {
                //添加用户操作记录
                CommonBll.WriteLog("{0}删除了Article表id为【" + id + "】的记录!");
                //UseLogBll.GetInstence().Save(page, "{0}删除了Article表id为【" + id + "】的记录!");
            }
        }
Esempio n. 5
0
        /// <summary>
        /// 从IIS缓存中获取Article表记录
        /// </summary>
        /// <param name="isCache">是否从缓存中读取</param>
        public IList <DataAccess.Model.Article> GetList(bool isCache = true)
        {
            try
            {
                //判断是否使用缓存
                if (CommonBll.IsUseCache() && isCache)
                {
                    //检查指定缓存是否过期——缓存当天有效,第二天自动清空
                    if (CommonBll.CheckCacheIsExpired(const_CacheKey_Date))
                    {
                        //删除缓存
                        DelAllCache();
                    }

                    //从缓存中获取DataTable
                    var obj = CacheHelper.GetCache(const_CacheKey);
                    //如果缓存为null,则查询数据库
                    if (obj == null)
                    {
                        var list = GetList(false);

                        //将查询出来的数据存储到缓存中
                        CacheHelper.SetCache(const_CacheKey, list);
                        //存储当前时间
                        CacheHelper.SetCache(const_CacheKey_Date, DateTime.Now);

                        return(list);
                    }
                    //缓存中存在数据,则直接返回
                    else
                    {
                        return((IList <DataAccess.Model.Article>)obj);
                    }
                }
                else
                {
                    //定义临时实体集
                    IList <DataAccess.Model.Article> list = null;

                    //获取全表缓存加载条件表达式
                    var exp = GetExpression <Article>();
                    //如果条件为空,则查询全表所有记录
                    if (exp == null)
                    {
                        //从数据库中获取所有记录
                        var all = Article.All();
                        list = all == null ? null : Transform(all.ToList());
                    }
                    else
                    {
                        //从数据库中查询出指定条件的记录,并转换为指定实体集
                        var all = Article.Find(exp);
                        list = all == null ? null : Transform(all);
                    }

                    return(list);
                }
            }
            catch (Exception e)
            {
                //记录日志
                CommonBll.WriteLog("从IIS缓存中获取Article表记录时出现异常", e);
            }

            return(null);
        }