Ich habe einen Lambda-Ausdruck, den ich gerne weitergeben und wiederverwenden möchte. Hier ist der Code:
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>();
}
Der Schlüssel hier ist, dass ich den Lambda-Ausdruck, den ich hier verwende, an die Methode übergeben kann, die diesen Code aufruft, damit ich ihn wiederverwenden kann. Der Lambda-Ausdruck ist das zweite Argument in meiner .Query-Methode. Ich gehe davon aus, dass ich eine Aktion oder eine Funktion verwenden möchte, bin mir aber nicht ganz sicher, wie die Syntax dafür lautet oder wie sie funktioniert. Kann mir bitte jemand ein Beispiel geben?