public IHttpActionResult Search() { var searchMode = HttpContext.Current.Request.QueryString[SearchConstants.QueryString.UseSolrNet]; var searchQuery = new SearchQuery { SearchText = HttpContext.Current.Request.QueryString[SearchConstants.QueryString.SearchTextName], Filters = SearchService.GetSelectedFilters(HttpContext.Current.Request.QueryString), TemplateName = SearchConstants.Templates.ProductTemplateName, Language = Sitecore.Context.Language.ToString(), Facets = SearchService.GetSelectedFacets(Sitecore.Context.Database.GetItem(new ID(SearchConstants.Items.ProductsSearchPageId))), ContextDatabase = Sitecore.Context.Database.Name }; SearchResult <Product> searchResults = null; if (string.IsNullOrEmpty(searchMode)) { searchResults = ProductsHandle.Handle(searchQuery); } else { searchResults = SolrNetProductsHandle.Handle(searchQuery); } return(Json(searchResults)); }
public IHttpActionResult Add(AddProductRequest request) { Thread.Sleep(1000); var searchQuery = new SearchQuery { Filters = new List <KeyValuePair <string, List <string> > > { new KeyValuePair <string, List <string> >("pid_s", new List <string> { request.ProductId }) }, TemplateName = SearchConstants.Templates.ProductTemplateName, Language = Sitecore.Context.Language.ToString(), ContextDatabase = Sitecore.Context.Database.Name }; var searchResults = SolrNetProductsHandle.Handle(searchQuery); var product = searchResults.Results.First(x => x.Id == request.ProductId); AddProduct(product, request.Quantity); return(Json(new UpdateCartResponse { Success = true, Message = "Add cart success" })); }