Example #1
0
        public ActionResult News(NewsCriteria criteria)
        {
            StringBuilder where = new StringBuilder();
            DynamicParameters parameter = new DynamicParameters();

            where.Append(" n.Deleted = 0 ");
            if (criteria.CategoryId > 0)
            {
                where.Append(" AND n.CategoryId = @cid");
                parameter.Add("cid", criteria.CategoryId);
            }
            if (!string.IsNullOrEmpty(criteria.Title))
            {
                where.Append(" AND n.Title LIKE @title");
                parameter.Add("title", "%" + criteria.Title + "%");
            }
            if (criteria.StartDate.HasValue)
            {
                where.Append(" AND n.CreateTime >= @start");
                parameter.Add("start", criteria.StartDate.Value);
            }
            if (criteria.EndDate.HasValue)
            {
                where.Append(" AND n.CreateTime < @end");
                parameter.Add("end", criteria.EndDate.Value);
            }
            var pc = new PageCriteria
            {
                Table     = "News n INNER JOIN NewsCategory c ON n.CategoryId = c.Id",
                Where     = where.ToString(),
                PageIndex = CurrentPageIndex,
                Order     = "n.Id DESC",
                PageSize  = PageSize,
                Parameter = parameter
            };
            var model = nr.GetPagedData <News, NewsCategory, News>(pc, (n, c) => { n.Category = c; return(n); });

            ViewBag.NewsCategories = nr.GetAllCategories().Select(c => new SelectListItem {
                Value = c.Id.ToString(), Text = c.Title
            });
            return(View(model));
        }
Example #2
0
 public IEnumerable GetAllCategories()
 {
     return(_newsRepository.GetAllCategories());
 }
Example #3
0
        public ActionResult SideMenu()
        {
            var categories = nr.GetAllCategories();

            return(PartialView("_NewsSideMenu", categories));
        }