He creado una aplicación ASP.NET MVC con MVC 2.0 y Fluidez NHibernate (escondida detrás de los repositorios por alguna razón). La aplicación representa un dominio bastante complejo con algunos objetos diferentes, como usuarios, mensajes, comentarios, archivos y citas.¿Cuál es la mejor manera de implementar una búsqueda de texto completo para una aplicación ASP.NET MVC?
Ahora quiero implementar una búsqueda de texto completo que permita al usuario encontrar fácilmente todo tipo de contenido simplemente ingresando una frase de búsqueda. Cuando manejo por separado todos los tipos de objetos diferentes en la aplicación, ahora tengo que ponerlos "juntos" para la búsqueda. Eso significa que el usuario no hace distinción entre los diferentes tipos, simplemente ingresa "xyz" y quiere obtener resultados en una lista, comentarios mezclados con mensajes, etc.
La opción 1 es crear un servicio de búsqueda que busque la búsqueda resultado de los diferentes repositorios y prepara la salida combinada (clasificación, paginación, etc.). Pero eso es realmente, muy caro cuando la información detrás crece (y crecerá).
Así que estoy buscando una solución alternativa. Actualmente estoy trabajando con SQL Server 2008. Lo que he encontrado es lucene.net (http://lucene.apache.org/lucene.net/), pero no invertí mucho tiempo todavía.
¿Alguna sugerencia?
Es incluso el 100% de los datos provenientes de SQL Server. Así que tienes razón, simplemente tomo la buena costumbre, tal vez incluso con un procedimiento almacenado o simplemente ADO.NET - afortunadamente todavía estoy usando repositorios. –