Вы на самом деле не говорите, нужно ли вам / нужно ли «пауку» индексировать ваш сайт «как есть» (например, Google; это полезно, если ваш контент для поиска на каждой странице поступает из множества разных таблиц / объектов / сущностей) или вы просто хотите запросить EF с использованием синтаксиса, подобного полнотекстовому поиску, чтобы вернуть коллекцию сущностей?
Если вас интересует подход «паук» - вот статья CodeProject для небольшой поисковой системы ASP.NET « Searcharoo ». Это поисковая система для небольших сайтов (она вообще не использует базу данных), поэтому она может не подходить для вашей ситуации.
Код также находится по адресу searcharoo.codeplex.com и 7 статей о том, как он работает / построен на Searcharoo.net (отказ от ответственности: я их написал; надеюсь, они интересны /useful).
Если вам нужен прямой поиск в вашей базе данных, вам, вероятно, следует обратиться к функции полнотекстового поиска в SQL Server 2008 (при условии, что LIKE
недостаточно сложен для ваших нужд). Мы использовали информацию из этой статьи (бесплатная регистрация) для настройки полнотекстового поиска SQL для рабочего проекта ... хотя в нашем решении нет EF.
Кроме того, как вы, возможно, знаете, StackOverflow построен с ASP.NET MVC - они рассказали о некоторых проблемах с SQL 2008 FTS . Также есть некоторая информация о SQL FTS и Lucene.NET (еще одна поисковая система, которую вы можете исследовать), которая может быть полезна.