ฉันมีนิพจน์แลมบ์ดาที่ฉันต้องการจะส่งต่อและนำกลับมาใช้ใหม่ได้ นี่คือรหัส:
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>();
}
คีย์ตรงนี้คือฉันต้องการส่งนิพจน์แลมบ์ดาที่ฉันใช้ตรงนี้ไปยังเมธอดที่เรียกรหัสนี้เพื่อที่ฉันจะได้ใช้ซ้ำ นิพจน์แลมบ์ดาเป็นอาร์กิวเมนต์ที่สองภายในเมธอด. เคียวรีของฉัน ฉันสมมติว่าฉันต้องการใช้ Action หรือ Func แต่ฉันไม่ค่อยแน่ใจว่าไวยากรณ์นี้มีไว้เพื่ออะไรหรือทำงานอย่างไร ใครช่วยยกตัวอย่างหน่อยได้ไหม