Note that there are some explanatory texts on larger screens.

plurals
  1. POJoin Query for multiple fields - lucence.net search in MVC C#
    text
    copied!<p>How can search on two fields like search term, city or state. I have to do search like <a href="http://www.justdial.com/" rel="nofollow noreferrer">justdial</a>.I am getting search results only by search term rather than term and place. I tried some code like below but I am getting exception. </p> <h1>Search Method:</h1> <pre><code>public static IEnumerable&lt;SearchModel&gt; Search(string input, string state, string city) { var terms = input.Trim().Replace("-", " ").Split(' ') .Where(x =&gt; !string.IsNullOrEmpty(x)).Select(x =&gt; x.Trim() + "*"); var stat = state.Trim().Replace("-", " ").Split(' ') .Where(x =&gt; !string.IsNullOrEmpty(x)).Select(x =&gt; x.Trim()); input = string.Join(" ", terms,stat); //Joiningstate here return _search(input); } </code></pre> <h1>_search Method:</h1> <pre><code> private static IEnumerable&lt;SearchModel&gt; _search(string searchQuery) { // validation if (string.IsNullOrEmpty(searchQuery.Replace("*", "").Replace("?", ""))) return new List&lt;SearchModel&gt;(); // set up lucene searcher using (var searcher = new IndexSearcher(_directory, false)) { var hits_limit = 1000; var analyzer = new StandardAnalyzer(Version.LUCENE_30); var parser = new MultiFieldQueryParser (Version.LUCENE_30, new[] { "Name","StateName", "CityName" }, analyzer); var query = parseQuery(searchQuery, parser); var hits = searcher.Search(query, null, hits_limit, Sort.INDEXORDER).ScoreDocs; var results = _mapLuceneToDataList(hits, searcher); analyzer.Close(); searcher.Dispose(); return results; } } </code></pre> <h1>Parse Query:</h1> <pre><code>private static Query parseQuery(string searchQuery, QueryParser parser) { Query query; try { query = parser.Parse(searchQuery.Trim()); } catch (ParseException) { query = parser.Parse(QueryParser.Escape(searchQuery.Trim())); } return query; } </code></pre> <p>But I am getting exception in Parse Query like below. <img src="https://i.stack.imgur.com/BsY0f.png" alt="enter image description here"></p> <p>Please help me.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload