Per fare questo devi usare la Reflection, ma secondo me è una complicazione eccessiva, secondo me ti conviene implementare qualcosa del genere per le ricerche 'standard' e poi usare query LINQ specifiche 'al momento' quando ti servono.
Una soluzione più complessa (ma secondo me migliore, in particolare in ottica di riusabilità del codice) è quella di utilizzare un metodo 'generico' che accetta delle NSpecifications ( https://github.com/jnicolau/NSpecifications questo è C#, ma tanto per darti un'idea) oppure che accetta una Func specifica, questo ti permetterebbe di avere centralizzata la logica di interazione con il db, ma con la possibilità di modificare i parametri di ricerca in base alle esigenze.
In genere questo tipo di soluzioni si utilizzano in contesti DDD (Domain Driven Design) con le Dependency Injection delle interfacce relativa a services e repositories

Rispondi quotando