Написание алгоритма полнотекстового поиска на C # / Entity Framework - с чего начать?

Мне нужно выполнить поиск в потенциально большой коллекции предложений, и я не знаю, с чего начать.

Таким образом, пользователь отправит поисковую фразу, например, «как мне удалить свою учетную запись», затем мне нужно перейти в базу данных и выполнить сопоставление с предоставленными словами.

На данный момент я думаю о том, чтобы сделать что-то вроде следующего:

  • Разделить фразу на отдельные слова
  • Удалить очень распространенные слова (и, если, и т. Д.)
  • Каким-то образом упорядочить слова по приоритету (не знаю, как чтобы сделать это еще)
  • Используя цикл EF по словам, выполняя String.Contains для каждого db запись и слово
  • Если результатов не найдено, удалите некоторые слова с более низким приоритетом и искать еще раз
  • Повторить

Может ли кто-нибудь указать мне в правильном направлении? Также, если кто-нибудь знает какие-либо библиотеки для выполнения такой работы, это было бы здорово.

Ура

9
задан jcvandan 1 February 2012 в 10:14
поделиться