私はしたい方法で動作しているSolrnetを使用して検索を行っています。しかし、私は自分のWebページから自分のクエリパラメータをSolrnetに渡す最善の方法についていくつかアドバイスをしたいと思います。 http://www.watchfinder.co.uk/SearchResults.aspx?q=% 3aの & f_brand =ロレックス& f_bracelets =鋼& f_movements =自動:Bast Way On Solrnetにクエリパラメータを渡す
私は理想的にやりたいことは、このサイトがそれをしないのと同じように私のクエリ文字列パラメータを渡すです。
サイトクエリ文字列からわかるように、SolrNetに直接渡されているようです。ここで私は、瞬間(ファセットクエリセグメント)でそれをやっている:
public class SoftwareSalesSearcher { public static SoftwareSalesSearchResults Facet() { ISolrOperations solr = SolrOperationsCache.GetSolrOperations(ConfigurationManager.AppSettings["SolrUrl"]); //Iterate through querystring to get the required fields to query Solrnet List queryCollection = new List(); foreach (string key in HttpContext.Current.Request.QueryString.Keys) { queryCollection.Add(new SolrQuery(String.Format("{0}:{1}", key, HttpContext.Current.Request.QueryString[key]))); } var lessThan25 = new SolrQueryByRange("SoftwareSales", 0m, 25m); var moreThan25 = new SolrQueryByRange("SoftwareSales", 26m, 50m); var moreThan50 = new SolrQueryByRange("SoftwareSales", 51m, 75m); var moreThan75 = new SolrQueryByRange("SoftwareSales", 76m, 100m); QueryOptions options = new QueryOptions { Rows = 0, Facet = new FacetParameters { Queries = new[] { new SolrFacetQuery(lessThan25), new SolrFacetQuery(moreThan25), new SolrFacetQuery(moreThan50), new SolrFacetQuery(moreThan75) } }, FilterQueries = queryCollection.ToArray() }; var results = solr.Query(SolrQuery.All, options); var searchResults = new SoftwareSalesSearchResults(); List softwareSalesInformation = new List(); foreach (var facet in results.FacetQueries) { if (facet.Value != 0) { SoftwareSalesFacetDetail salesItem = new SoftwareSalesFacetDetail(); salesItem.Price = facet.Key; salesItem.Value = facet.Value; softwareSalesInformation.Add(salesItem); } } searchResults.Results = softwareSalesInformation; searchResults.TotalResults = results.NumFound; searchResults.QueryTime = results.Header.QTime; return searchResults; } }
私は、次のクエリ文字列を追加することにより、私の現在のコードからすべての私の結果を照会することができる方法を見ているように見えることができない瞬間:Q = :。
ああ、ありがとうMauricio。それは私が達成しようとしているもののように見えます。私はそれを与えるだろう! – R100