В настоящее время я пишу функцию поиска в ASP.NET MVC 4 с помощью Entity Framework. Однако я столкнулся с препятствием, для которого я могу найти только «плохие» решения.
Мои функции поиска возвращают модель, состоящую из 4 параметров:
String Name
String Street
String Code
String Province
List<Query> query = (from t in Model select t).ToList();
Теперь я хочу отфильтровать результаты поиска. Однако пользователь может решить заполнить как можно больше полей поиска. Он может решить использовать Имя и улицу, или Имя, улицу и провинцию, или...
Единственное реальное решение, которое я смог найти, состоит в том, чтобы сделать мой запрос и IQueryable
и проверить, действительно ли поле было заполнено if
, затем используйте .Where
для обновления запроса.
Поскольку в настоящее время это даст m 5 запросов, мне интересно, есть ли лучшее решение, которое мне здесь не хватает.
Спасибо за помощь.