public IEnumerable<Product> GetProducts(IEnumerable<String> ids) { SolrClient client = new SolrClient(); DocumentQuery query = new DocumentQuery(); query.Ids.AddRange(ids); var documents = client.Execute(query); foreach (dynamic document in documents) { yield return new Product() { ProductID = document.ID, Image = document.Image, Name = document.Name, Price = decimal.Parse(document.Price) }; } }
public IEnumerable<SolrDocument> Execute(DocumentQuery query) { using (var client = new WebClient()) { var response = client.DownloadString("http://localhost:8983/solr/browse?" + query.ToSolrQuery()); var responseElement = XElement.Parse(response); return responseElement.Element("result") .Elements("doc") .Select(x => new SolrDocument(x)); } }
// // GET: /Slot/ public ActionResult Slot(string page, string slot) { // TODO: Get a slot by the name // TODO: Get a slot template // TODO: Get slot content var query = new DocumentQuery(); query.Ids.Add("J129528262"); query.Ids.Add("J129528261"); var model = searchService.Execute(query); return PartialView("Vertical3ProductSlot", model); }