我可以用lambda表达式简化这个语句吗?
var project = from a in accounts
from ap in a.AccountProjects
where ap.AccountProjectID == accountProjectId
select ap;
Run Code Online (Sandbox Code Playgroud)
老实说,我看起来很清楚。我认为这种情况下的 lambda 可读性可能较差,即像下面布兰登发布的那样。
(盗自布兰登的帖子)
var project = accounts.Select(a => a.AccountProjects)
.Where(x => x.AccountProjectID == accountProjectId);
Run Code Online (Sandbox Code Playgroud)
就可读性而言,我认为几个循环比 lambda 解决方案更可取,并且我认为您的解决方案比循环更可取。