Мне интересно, как реализовать функцию поиска?
Давайте посмотрим, как я могу представить об этом.Я буду использовать employee
модель для примера.Так что employee
содержит довольно стандартные свойства: 'Id', EmployeeId
, Name
, Birthday
.
Мой Repository
объект содержит метод, подобный:
IQueryable<T> Get(Expression<Func<T, Boolean>> predicate);
Таким образом, действие Search
(принадлежит EmployeeController
) будет выглядеть так:
[HttpPost]
public ViewResult Search(Guid Id, Guid EmployeeId, String Name, DateTime birthday)
{
// call repository.get(x => x.Name == Name && x.Id == Id ... );
}
Представление Search
будет содержать форму с текстовыми полями , соответствующими критериям поиска / параметрам действия.
Но там возможность поиска связана с моделью / контроллером.Поэтому мне нужно создать аналогичное действие для каждого контроллера.
Как сделать это лучше?
Спасибо!