public async Task <IEnumerable <PostViewModel> > List(PostQueryParameter param) { var items = await PostQuery.SelectAsync(param); var result = items.MapList <PostViewModel>(); return(result); }
public async Task <List <Post> > SelectAsync(PostQueryParameter param) { Func <IQueryable <Post>, IQueryable <Post> > query = (queryable) => { if (param == null) { return(queryable); } if (!string.IsNullOrWhiteSpace(param.Title)) { queryable = queryable.Where(e => e.Title.Contains(param.Title)); } if (!string.IsNullOrWhiteSpace(param.Key)) { queryable = queryable.Where(e => e.Content.Contains(param.Key)); } return(queryable); }; return(await base.SelectAsync(query)); }
public async Task <IPaged <Post> > PagedAsync(int pageIndex, int pageSize, PostQueryParameter param) { Func <IQueryable <Post>, IQueryable <Post> > query = (queryable) => { if (param == null) { return(queryable); } if (!string.IsNullOrWhiteSpace(param.Title)) { queryable = queryable.Where(e => e.Title.Contains(param.Title)); } if (!string.IsNullOrWhiteSpace(param.Key)) { queryable = queryable.Where(e => e.Content.Contains(param.Key)); } return(queryable); }; return(await base.PagedAsync(query, pageIndex, pageSize)); }
public async Task <IPaged <PostViewModel> > Paged(int pageIndex = 1, int pageSize = 10, PostQueryParameter param = null) { var result = await PostQuery.PagedAsync(pageIndex, pageSize, param); var paged = result.MapPaged <PostViewModel>(); return(paged); }