我有一個lambda表達式,我希望能夠傳遞和重用。下面的代碼:C#將Lambda表達式作爲方法參數
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>();
}
這裏的關鍵,是我希望能夠通過我使用這裏成的呼喚這種代碼的方法lambda表達式,這樣我就可以重新使用。 lambda表達式是我的.Query方法中的第二個參數。我假設我想要使用一個Action或Func,但我不太確定這個語法或者它的工作原理。有人可以給我一個例子嗎?
使參數的動作或函數求。 –
對,這就是我想的......你能告訴我一個我如何做這個的例子嗎? –
[C#lambda表達式作爲函數參數](http:// stackoverflow。com/questions/5396746/c-sharp-lambda-expressions-as-function-arguments) – user