【发布时间】:2012-12-27 04:25:36
【问题描述】:
我有一个我希望能够传递和重用的 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,但我不太确定它的语法是什么或它是如何工作的。谁能给我一个例子?
【问题讨论】:
-
将参数设为 Action 或 Func。
-
对,我就是这么想的……你能给我举个例子吗?