Этим вопросом является ответвление от этого вопроса. Мой запрос является двукратным, но потому что оба связаны, я думаю, что это - хорошая идея соединить их.
Править--
Я дам пример требования для запроса, который я хотел бы сделать:
Скажите, что у меня есть 5 полей:
Все поля являются дополнительными, последнее поле должно искать по всем другим полям. Я пробегаюсь через каждое поле и вижу, является ли это IsNullOrEmpty (). Если бы это не, я хотел бы добавить часть своего запроса, таким образом, это добавляет соответствующую поисковую часть.
Имя и фамилия должны быть точными совпадениями и иметь больше веса затем другие поля. Возраст является строкой и если точное совпадение. Адрес может varry в порядке. Все может также varry в порядке.
Как я должен пойти об этом?
Используйте класс BooleanQuery для создания объектов запроса. Создайте один из них и добавьте к нему другие объекты Query, чтобы создать более крупный дизъюнктивный запрос:
Атомарные запросы могут быть построены с помощью классов Term и TermQuery.
(Ссылки и примеры для Lucene Java, но .NET должен быть похожим.)