Necesito buscar una colección potencialmente grande de oraciones, y no tengo ni idea de dónde empezar.Escribir el algoritmo de búsqueda de texto completo en C#/Entity Framework - ¿por dónde empezar?
En resumen, un usuario enviará una frase de búsqueda, por ejemplo, "cómo elimino mi cuenta", entonces tengo que ir a la base de datos y hacer una coincidencia con las palabras proporcionadas.
En este momento estoy pensando en hacer algo como lo siguiente: frase
- Split a palabras individuales
- eliminar palabras muy frecuentes (y, de ser, etc)
- orden alguna manera las palabras por prioridad (ni idea de cómo hacer esto aún)
- Usando bucle EF a través de palabras, haciendo un String.Contains en cada db registro y la palabra
- Si no hay resultados, eliminar algunas de la lO wer palabras prioritarias y búsqueda de nuevo
- Repita
¿Alguien podría apuntar en la dirección correcta? Además, si alguien conoce alguna biblioteca para hacer este tipo de trabajo, sería genial.
Saludos
¿Realmente desea escribir la búsqueda de texto completo, o está utilizando una suficiente? Si usarlo es suficiente, puedes lanzar Lucene.net al problema. – CodesInChaos
Preferiría usar uno que no sea el correcto – jcvandan
Sin embargo, preferiría que la búsqueda ocurriera en SQL si fuera posible, realmente no quiero devolver un registro completo cada vez que necesito buscar – jcvandan