Implementazione di una casella di ricerca utilizzando ASP.NET MVC, SQL Server, Entity Framework

asp.net asp.net-mvc entity-framework search

Domanda

Non ho esperienza nella creazione di una soluzione di ricerca, ma mi piacerebbe avere una casella di ricerca all'interno della mia soluzione e non so da dove iniziare. Ci sono fantastici trucchi di SQL Server che posso utilizzare per rendere performante la mia soluzione di ricerca (sto utilizzando un server SQL 2008 ospitato). Mi piacerebbe puntatori a un tutorial in più fasi che mi consenta di iniziare con una semplice soluzione di ricerca delle query. .e poi strati su codice e funzionalità più avanzati.

Risposta popolare

In realtà non dici se hai bisogno / vuoi che uno "spider" indicizzi il tuo sito "così com'è" (come Google, che è utile se il tuo contenuto ricercabile in ogni pagina proviene da molte tabelle / oggetti / entità diverse) o se tu vuoi solo interrogare EF usando la sintassi full-text-search-like per restituire una collezione di Entità?

Se sei interessante nell'approccio "spider" - ecco un articolo CodeProject per un piccolo motore di ricerca ASP.NET " Searcharoo ". Si tratta di un motore di ricerca per la scansione di siti Web di piccole dimensioni (non utilizza affatto un database), pertanto potrebbe non essere applicabile alla situazione. Il codice è anche in searcharoo.codeplex.com e ci sono 7 articoli su come funziona / è stato costruito su Searcharoo.net (disclaimer: li ho scritti, spero che siano interessanti / utili).

Se devi cercare direttamente nel tuo database, probabilmente dovresti esaminare la funzionalità di ricerca di testo completo di SQL Server 2008 (assumendo che LIKE non sia abbastanza sofisticato per le tue esigenze). Abbiamo utilizzato le informazioni di questo articolo (registrazione gratuita) per impostare la ricerca full text SQL su un progetto di lavoro ... nessun EF nella nostra soluzione.

Inoltre, come saprai StackOverflow è stato creato con ASP.NET MVC - hanno scritto blog su alcuni problemi con SQL 2008 FTS . Ci sono anche alcune informazioni su SQL FTS contro Lucene.NET (che è un altro motore di ricerca che potresti ricercare) che potrebbe essere utile.



Related

Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché
Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché