public async Task <IEnumerable <CommentViewModel> > CommentList(CommentQueryParameter param) { var items = await CommentQuery.SelectAsync(param); var result = items.MapList <CommentViewModel>(); return(result); }
public async Task <List <Comment> > SelectAsync(CommentQueryParameter param) { Func <IQueryable <Comment>, IQueryable <Comment> > query = (queryable) => { if (param == null) { return(queryable); } if (param.PostId != null) { queryable = queryable.Where(e => e.PostId == param.PostId.Value); } if (param.UserId != null) { queryable = queryable.Where(e => e.UserId == param.UserId.Value); } return(queryable); }; return(await SelectAsync(query)); }
public async Task <IPaged <Comment> > PagedAsync(int pageIndex, int pageSize, CommentQueryParameter param) { Func <IQueryable <Comment>, IQueryable <Comment> > query = (queryable) => { if (param == null) { return(queryable); } if (param.PostId != null) { queryable = queryable.Where(e => e.PostId == param.PostId.Value); } if (param.UserId != null) { queryable = queryable.Where(e => e.UserId == param.UserId.Value); } return(queryable); }; return(await base.PagedAsync(query, pageIndex, pageSize)); }
public async Task <IPaged <CommentViewModel> > Paged(int pageIndex = 1, int pageSize = 10, CommentQueryParameter param = null) { var result = await CommentQuery.PagedAsync(pageIndex, pageSize, param); var paged = result.MapPaged <CommentViewModel>(); return(paged); }