示例#1
0
        /// <summary>
        /// 根据cat_ctrl获得新闻列表
        /// 指定某一个新闻分类,然后获取这个分类下的处于正常状态的新闻列表
        /// </summary>
        /// <returns></returns>
        public static List <NewsInfo> News_SelectPaged(string cat_ctrl, string page, string pagesize)
        {
            page     = (int.Parse(page) < 1) ? "1" : page;
            pagesize = (int.Parse(pagesize) > 30) ? "30" : pagesize;

            // 根据指定的cat_ctrl获取某一新闻分类信息
            NewsCateInfo cate = CacheMarker.GetNewsCateByCtrl(cat_ctrl);

            if (cate == null)
            {
                return(new List <NewsInfo>());
            }
            NewsSearchInfo search   = new NewsSearchInfo();
            int            rowcount = 0;

            using (var access = new DataAccess_QzNews(Constants.QZNewSite_News_Db_Key))
            {
                try
                {
                    search.n_state = 1;

                    if (cate.cat_inheritAll && !cate.cat_isLast)
                    {
                        search.cat_inheritPath = cate.cat_path;
                    }
                    else
                    {
                        search.n_cat_id = cate.cat_id;
                    }

                    string whereString = search.ToWhereString();

                    // 图集
                    if ("photo" == cat_ctrl)
                    {
                        whereString += " and n_type='images'";
                    }

                    return(access.News_SelectPaged(GetNewsTable(cate.cat_tableIndex), "*", whereString, search.DefOrder, int.Parse(page), int.Parse(pagesize), out rowcount));
                }
                catch (Exception e)
                {
                    #region debug
                    Util.Log_Info(nameof(News_SelectPaged), Location.Internal, e.Message, "database error");
                    #endregion
                    return(new List <NewsInfo>());
                }
            }
        }
示例#2
0
        /// <summary>
        /// 获取某一分类下最新新闻
        /// </summary>
        /// <param name="cat_ctrl"></param>
        /// <returns></returns>
        public static NewsInfo LastNews_Select(string cat_ctrl)
        {
            // 根据指定的cat_ctrl获取某一新闻分类信息
            NewsCateInfo cate = CacheMarker.GetNewsCateByCtrl(cat_ctrl);

            if (cate == null)
            {
                return(null);
            }
            NewsSearchInfo search   = new NewsSearchInfo();
            int            rowcount = 0;

            using (var access = new DataAccess_QzNews(Constants.QZNewSite_News_Db_Key))
            {
                search.n_state = 1;

                if (cate.cat_inheritAll && !cate.cat_isLast)
                {
                    search.cat_inheritPath = cate.cat_path;
                }
                else
                {
                    search.n_cat_id = cate.cat_id;
                }

                string whereString = search.ToWhereString();

                // 图集
                if ("photo" == cat_ctrl)
                {
                    whereString += " and n_type='images'";
                }

                var list = access.News_SelectPaged(GetNewsTable(cate.cat_tableIndex), "*",
                                                   whereString, search.DefOrder, 1, 1, out rowcount);
                if (list != null && list.Count > 0)
                {
                    return(list[0]);
                }
                return(null);
            }
        }