Utilizzando il modello di repository, è corretto restituire un IQueryable di un set di dati (tabella), per l'utilizzo generico?
In molti casi è molto utile, specialmente quando si utilizzano librerie esterne che sfruttano tale interfaccia, ad esempio alcuni plugin che ordinano / filtrano e si collegano agli elementi dell'interfaccia utente.
Tuttavia, l'esposizione di un IQueryable a volte sembra lasciare il design incline agli errori. Questo, insieme a un utilizzo errato del caricamento lento, potrebbe causare gravi risultati in termini di prestazioni.
D'altro canto, avere metodi di accesso per ogni singolo utilizzo sembra ridondante e anche molto lavoro (considerando i test unitari ecc.)