Учитывая метод подписи, как так ...Как передать предикат выражения Linq
IEnumerable<Student> get(Func<DataRow, bool> predicate);
Как я могу передать аргумент предиката вместе с выражением Linq?
public override IEnumerable<Student> get(Func<System.Data.DataRow, bool> predicate = null) {
var students = from student in _dataSet.Tables[0].AsEnumerable()
join attendance in _dataSet.Tables[1].AsEnumerable()
on student.Field<int>("id") equals attendance.Field<int>("idStudent")
join grade in _dataSet.Tables[2].AsEnumerable()
on student.Field<int>("id") equals grade.Field<int>("idStudent")
join assignment in _dataSet.Tables[3].AsEnumerable()
on student.Field<int>("id") equals assignment.Field<int>("idStudent")
// where predicate??
// select blahblahblah
// return statement
}
Поскольку это выглядит как предикат может быть пустым, это займет немного больше работы, чтобы учесть возможность того, что это не предусмотрено. – StriplingWarrior
@ StriplingWarrior мудрый парень, а? – McGarnagle