I've built an ASP.NET MVC application with MVC 2.0 and Fluent NHibernate (hided behind repositories for some reasons). The application represents a quite complex domain with some different objects like users, messages, comments, files and appointments.
Now I want to implement a fulltext search which is enabling the user to find easily all types of content by simply entering a search phrase. When handling all that types of different objects in the application seperately, I now have to put them "together" for the search. That means the user makes no distinction between the different types, he just enters "xyz" and wants to get results in a list, comments mixed up with messages etc.
Option 1 is to create a search service which fetches the search result from the different repositories and prepares the combined output (sorting, paging etc.). But that's really, really expensive when the data behind grows (and it will grow).
So I am looking for an alternative solution. Currently I am working with SQL Server 2008. What I have found is lucene.net (http://lucene.apache.org/lucene.net/), but I didn't invest much time yet.
Any suggestions?