Lambda转换为LINQ [英] Lambda convert to LINQ
本文介绍了Lambda转换为LINQ的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我对lambda一无所知,甚至无法阅读复杂的 lambda表达式一个>.我下面有此lambda代码,我想将其转换为LINQ,但我不知道如何.
I don't know anything about lambda, and I can't even read a complicated lambda expression. I have this lambda code below that I want to convert into LINQ, but I don't know how.
var train = db.sample1
.Join(db.sample2, a => a.CertificateId, b => b.CertificateId, (a, b) => new { a, b })
.Where(x => x.a.Year.Value.Year == year && x.a.TrainingTypeId.Value == trainingTypeId && x.a.IsApproved.Value && x.b.EndDate >= DateTime.Now)
.Select(z => z.a).Distinct();
到目前为止我一直尝试并坚持的方法:
What I have tried so far and got stuck on:
var train = (from c in db.sample1
join in ts sample2 where a.CertificateId equals b.CertificateId
......
推荐答案
Lambda LINQ仍然是链接表达式.但是,该语句应如下所示:
Lambda LINQ is still a link expression. However, the statement should look something like this:
var train2 = (from c in db.sample1
join t in db.sample2
on c.CertificateId equals t.CertificateId
where c.Year.Value.Year == year && c.TrainingTypeId.Value == trainingTypeId
&& c.IsApproved.Value && t.EndDate >= DateTime.Now
select c).Distinct();
这篇关于Lambda转换为LINQ的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文