Attualmente vedo richieste di linq ovunque nella soluzione (controller, helper, business logic, repository).
Vorrei memorizzarli tutti in un unico posto (spero che questo impedisca duplicati e rendi il codice più asciutto e riusabile), ma non dove sia.
È corretto aggiungere metodi aggiuntivi a repository specifici?
per esempio aggiungi questo metodo a PersonRepo?
List<Person> GetPersonsOlderThen(int age)
Sarebbe opportuno inserire richieste linq, che non restituiscono il tipo di entità risultato e utilizzano altri repository in un repository specifico?
List<Person> GetNumberOfPersonsThatHaveSalaryMoreTehn(decimal salary)
{
SELECT COUNT(ID) FROM PersonRepo
JOIN SalaryRepo ...
}
O forse è meglio archiviare tali richieste da qualche parte nella logica del business?
Forse esistono dei criteri per scoprire dove deve essere archiviata la richiesta di linq?