public GetBlogsResponse GetByCategory(GetBlogsByCategoryRequest request)
        {
            var   response = new GetBlogsResponse();
            Query query    = new Query();

            if (!string.IsNullOrEmpty(request.CategoryName))
            {
                query.Add(new Criterion("Category.Name", request.CategoryName.Replace('-', ' '), CriteriaOperator.Equal));
            }
            else
            {
                query.Add(new Criterion("BlogCategoryID", request.CategoryID, CriteriaOperator.Equal));
            }

            var list = _repository.FindBy(query)
                       .Where(o => o.IsActive = true)
                       .OrderByDescending(o => o.DatePosted);

            if (list != null)
            {
                response.Success  = true;
                response.Message  = "Blogs Retrieved Successfully!";
                response.BlogList = list.ToList <IBlog>();
            }
            else
            {
                response.Success = false;
                response.Message = "Blogs Retrieved Failed!";
            }

            return(response);
        }
示例#2
0
        public ActionResult ByCategory(string category)
        {
            var view = new HomeView();

            view.NavView.SelectedMenuItem = "nav-blog";
            var request    = new GetBlogsByCategoryRequest();
            var catrequest = new GetBlogCategoryByNameRequest();

            catrequest.CategoryName = category.Replace("-", " ");
            request.CategoryID      = _categoryService.GetByName(catrequest).Category.ID;
            view.Categories         = _categoryService.GetAll().Categories;
            var response = _blogService.GetByCategory(request);

            view.Posts = response.BlogList;
            return(View("BlogsByCategory", view));
        }