gpt4 book ai didi

c# - Linq 加入并排序

转载 作者:行者123 更新时间:2023-12-04 06:42:18 25 4
gpt4 key购买 nike

我在一个表中有文件,在另一个表中有文件操作。我想获取 Jeff 对其执行操作的最新文件,该文件的状态为 4。在 SQL 中,它看起来像这样:

SELECT TOP 1 files.* 
FROM files
LEFT OUTER JOIN fileActions ON files.FileId = fileActions.FileId
WHERE fileActions.ActionTaker = 'Jeff'
AND files.FileStatus = 4
ORDER BY fileActions.ActionDate DESC

我如何在 Linq 中表达相同的查询?

我已经尝试了很多东西,但我什至无法编译它。我觉得这是迄今为止我最接近的一次,但显然“top”不是 linq 语法词,所以我有一个很好的方法:

var file = from f in context.Files
join fa in context.FileActions on f.FileId equals fa.FileId
where fa.ActionTaker == "Jeff"
where f.FileStatus == 4
orderby fa.ActionDate descending
select top 1 f;

感谢任何帮助。

最佳答案

如果我理解你的问题......

 var file = (from f in context.Files
join fa in context.FileActions on f.FileId equals fa.FileId
where fa.ActionTaker == "Jeff" && f.FileStatus == 4
orderby fa.ActionDate descending
select new { Value1 = fa.Id, Value2 = f.Id }).FirstOrDefault();

关于c# - Linq 加入并排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30899038/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com