C # Pase la expresión Lambda como parámetro del método
Tengo una expresión lambda que me gustaría poder transmitir y reutilizar. Aquí está el código:
public List<IJob> getJobs(/* i want to pass the lambda expr in here */) {
using (SqlConnection connection = new SqlConnection(getConnectionString())) {
connection.Open();
return connection.Query<FullTimeJob, Student, FullTimeJob>(sql,
(job, student) => {
job.Student = student;
job.StudentId = student.Id;
return job;
},
splitOn: "user_id",
param: parameters).ToList<IJob>();
}
La clave aquí es que quiero poder pasar la expresión lambda que estoy usando aquí al método que está llamando a este código, para poder reutilizarlo. La expresión lambda es el segundo argumento dentro de mi método .Query. Supongo que querría usar un Action o Func, pero no estoy muy seguro de cuál es la sintaxis de esto o cómo funciona. ¿Puede alguien por favor darme un ejemplo?