public ActionResult Search([FromQuery] string blogName, [FromBody] BlogSearchCriteria criteria) { var articles = new List <BlogArticle>(); var blog = WorkContext.Blogs.FirstOrDefault(b => b.Name.Equals(blogName, StringComparison.OrdinalIgnoreCase)); if (blog != null) { var query = blog.Articles.AsQueryable().Where(x => x.IsPublished); if (!string.IsNullOrEmpty(criteria.Category)) { query = query.Where(a => !string.IsNullOrEmpty(a.Category) && a.Category.Handelize().EqualsInvariant(criteria.Category)); } if (!string.IsNullOrEmpty(criteria.Tag)) { query = query.Where(a => a.Tags != null && a.Tags.Select(t => t.Handelize()).Contains(criteria.Tag, StringComparer.OrdinalIgnoreCase)); } if (criteria.ExcludedArticleHandles != null && criteria.ExcludedArticleHandles.Any()) { query = query.Where(a => !criteria.ExcludedArticleHandles.Contains(a.Url)); } articles = query.OrderByDescending(a => a.CreatedDate).Skip((criteria.PageNumber - 1) * criteria.PageSize).Take(criteria.PageSize).ToList(); } return(Json(articles)); }
public IEnumerable <Blog> FindBlogs(BlogSearchCriteria criteria) { return (repository.GetBlogs(context.Site.ID).ToArray() .Where(a => a.Name.IndexOf(criteria.Name, StringComparison.OrdinalIgnoreCase) != -1 || a.DisplayName.IndexOf(criteria.Name, StringComparison.OrdinalIgnoreCase) != -1 ).ToArray()); }
public virtual OxiteViewModelItems <Blog> FindQuery(BlogSearchCriteria searchCriteria) { IEnumerable <Blog> foundBlogs = blogService.FindBlogs(searchCriteria); OxiteViewModelItems <Blog> model = new OxiteViewModelItems <Blog>(foundBlogs); model.AddModelItem(searchCriteria); return(model); }
public IEnumerable <Blog> FindBlogs(BlogSearchCriteria criteria) { return(Enumerable.Empty <Blog>()); /*repository.GetBlogs().ToArray() * .Where(a => * a.Name.IndexOf(criteria.Name, StringComparison.OrdinalIgnoreCase) != -1 || * a.DisplayName.IndexOf(criteria.Name, StringComparison.OrdinalIgnoreCase) != -1 * ).ToArray();*/ }
public OxiteViewModelItems <Blog> FindQuery(BlogSearchCriteria searchCriteria) { //TODO: (erikpo) Check permissions IEnumerable <Blog> foundBlogs = blogService.FindBlogs(searchCriteria); OxiteViewModelItems <Blog> model = new OxiteViewModelItems <Blog>(foundBlogs); model.AddModelItem(searchCriteria); return(model); }