2010-10-06 7 views
1

J'ai lucene agissant en tant que mon fournisseur de données pour interroger une liste de pays à faire l'achèvement automatique à partir d'une zone de texte qui fonctionne bien.Optimal options de requête lucene pour faire l'achèvement automatique

Ma question concerne le type de chaîne de requête que je devrais envoyer pour obtenir les résultats de retour les plus attendus.

Actuellement j'ai quelque chose le long des lignes de

var query = string.Format("*{0}*~0.5", txtCountry.Text) 

Y aurait-il recommandé à quelques réglages que pour cet usage?

Répondre

1

Utilisez plutôt la contribution d'orthographe. La requête que vous faites est très inefficace, car elle utilise des caractères génériques de premier plan.

Si vous ne voulez vraiment pas faire un index n-gram, alors je suppose que je ne vois pas de réelles améliorations (sauf évidemment augmenter la distance autorisée augmentera le nombre de résultats).

+0

Je pensais de toute façon supprimer le caractère générique de premier plan, car il fonctionne d'une manière quelque peu non évidente pour l'utilisateur. Utiliser les sorts de vérification orthographique n'est probablement pas faisable pour moi actuellement donc je suppose que je vais devoir vivre avec ça pour le moment. –