Я ищу совет по дизайну для следующего сценария:
У меня есть первое приложение EF5 MVC с кодом. Я создаю полнотекстовую функцию поиска, которая будет включать несколько взвешенных столбцов из многих таблиц. Поскольку я не могу создать представление с индексом из этих таблиц (некоторые из них содержат текстовые/двоичные столбцы), я создал хранимую процедуру, которая выведет идентификатор моего объекта (например, PersonID
) и ранг, связанный с этим объектом на основе условий поиска.
Мой текущий подход заключается в создании вспомогательного класса для выполнения полнотекстовых поисков, которые вызывают хранимую процедуру и загружают все объекты из контекста на основе возвращенных идентификаторов.
Мои вопросы:
- Является ли мой подход разумным/следует разумной лучшей практике?
- Кто-нибудь еще сделал что-то подобное с любыми извлеченными уроками?
- Есть ли способ сделать это более эффективно (т.е. получить результаты возвращенной/сопоставленной хранимой процедуры для объектов непосредственно без дополнительного поиска?)
UPDATE
Переместил мою детальную реализацию из редактирования вопроса в свой собственный ответ, чтобы больше соответствовать тому, что рекомендуется часто @meta.stackexchange.com