public ActionResult Post([Optional] OrderBy?orderBy, [Range(1, int.MaxValue, ErrorMessage = "页码必须大于0")] int page = 1, [Range(1, int.MaxValue, ErrorMessage = "页大小必须大于0")] int size = 15) { ViewBag.Total = PostService.Count(p => p.Status == Status.Pended || CurrentUser.IsAdmin && !p.IsFixedTop); var viewModel = GetIndexPageViewModel(page, size, orderBy, CurrentUser); return(View(viewModel)); }
public ActionResult Index() { ViewBag.Total = PostService.Count(p => p.Status == Status.Pended || CurrentUser.IsAdmin); var banners = BannerService.GetAllFromCache().OrderBy(b => new Random().Next()).ToList(); var fastShares = FastShareService.GetAllFromCache(s => s.Sort).ToList(); ViewBag.FastShare = fastShares; var viewModel = GetIndexPageViewModel(1, 15, OrderBy.ModifyDate, CurrentUser); viewModel.Banner = banners; return(View(viewModel)); }
public ActionResult Index() { ViewBag.Total = PostService.Count(p => p.Status == Status.Pended || CurrentUser.IsAdmin); var banners = AdsService.GetsByWeightedPrice(8, AdvertiseType.Banner).OrderBy(a => Guid.NewGuid()).ToList(); var fastShares = FastShareService.GetAllFromCache(s => s.Sort).ToList(); ViewBag.FastShare = fastShares; var viewModel = GetIndexPageViewModel(1, 15, OrderBy.ModifyDate, CurrentUser); viewModel.Banner = banners; return(View(viewModel)); }
public ActionResult Index(OrderBy orderBy = OrderBy.ModifyDate) { ViewBag.Total = PostService.Count(p => p.Status == Status.Pended); UserInfoOutputDto user = HttpContext.Session.Get <UserInfoOutputDto>(SessionKey.UserInfo) ?? new UserInfoOutputDto(); var banners = BannerService.GetAllFromL2CacheNoTracking(b => new Random().Next()).ToList(); List <FastShare> fastShares = FastShareService.GetAllFromL2CacheNoTracking(s => s.Sort).ToList(); ViewBag.FastShare = fastShares; var viewModel = GetIndexPageViewModel(1, 15, orderBy, user); viewModel.Banner = banners; return(View(viewModel)); }
public ActionResult Index() { ViewBag.Total = PostService.Count(p => p.Status == Status.Pended || CurrentUser.IsAdmin); var banners = AdsService.GetsByWeightedPrice(8, AdvertiseType.Banner).OrderBy(a => Guid.NewGuid()).ToList(); var fastShares = FastShareService.GetAllFromCache(s => s.Sort).ToList(); var postsQuery = PostService.GetQuery <PostOutputDto>(p => (p.Status == Status.Pended || CurrentUser.IsAdmin)); //准备文章的查询 var posts = postsQuery.Where(p => !p.IsFixedTop).OrderBy(OrderBy.ModifyDate.GetDisplay() + " desc").Take(15).Cacheable().ToList(); var viewModel = GetIndexPageViewModel(); viewModel.Banner = banners; viewModel.Posts = Enumerable.AsEnumerable(postsQuery.Where(p => p.IsFixedTop).OrderByDescending(p => p.ModifyDate)).Union(posts).ToList(); ViewBag.FastShare = fastShares; return(View(viewModel)); }
public ActionResult Post([Optional] OrderBy?orderBy, [Range(1, int.MaxValue, ErrorMessage = "页码必须大于0")] int page = 1, [Range(1, int.MaxValue, ErrorMessage = "页大小必须大于0")] int size = 15) { ViewBag.Total = PostService.Count(p => p.Status == Status.Pended || CurrentUser.IsAdmin && !p.IsFixedTop); var viewModel = GetIndexPageViewModel(); var postsQuery = PostService.GetQuery <PostOutputDto>(p => (p.Status == Status.Pended || CurrentUser.IsAdmin)); //准备文章的查询 var posts = postsQuery.Where(p => !p.IsFixedTop).OrderBy((orderBy ?? OrderBy.ModifyDate).GetDisplay() + " desc").Skip(size * (page - 1)).Take(size).Cacheable().ToList(); if (page == 1) { posts = Enumerable.AsEnumerable(postsQuery.Where(p => p.IsFixedTop).OrderByDescending(p => p.ModifyDate)).Union(posts).ToList(); } viewModel.Posts = posts; return(View(viewModel)); }
public void ShouldReturnIntCountPost() { // Arrange var expected = 5; var mockGenericRepo = new Mock <IGenericRepository <Post> >(); mockGenericRepo.Setup(s => s.Count(It.IsAny <Expression <Func <Post, bool> > >())).Returns(expected); var postService = new PostService(mockGenericRepo.Object); // Act var act = postService.Count(); // Assert Assert.Equal(expected, act); }