【发布时间】:2018-11-30 16:52:20
【问题描述】:
我已经尝试了好几个小时来创建一个具有 distinct 和 orderby 的 Linq 查询。在此article 中描述了与此有关的一般问题。 我找到解决方案的唯一方法是创建一个普通的 SQL 查询
SELECT TOP (10) [DATA]
FROM TestResult
inner join TestResultRelated on TestResultRelated.TestResult = TestResult.ID
WHERE TestResultRelated.PATH = 'TestResultRelatedAdditionalData.SoftwareVersion'
AND TestResult.USER_LOGIN_NAME = 'emilwkj'
AND TestResultRelated.DATA != ''
group by TestResultRelated.DATA order by max([START_DATE_TIME]) desc
我不需要解决这个确切问题的方法,但这里有一个关于该问题的示例:
Table 1:
ID | DateUsed | Version
1 | 01/01/2018 | 1.0
2 | 02/03/2018 | 1.1
3 | 05/05/2018 | 1.0
4 | 04/06/2018 | 1.4
在上表中,如何在 LinQ 中提取最后使用的 3 个不同的软件版本?
这可以在 LinQ 中实现吗?
【问题讨论】:
-
我们需要查看您的 C# 代码才能提供帮助,即您的实体类和 DbContext。您要实现的目标应该相当简单。
-
你的 linq 代码在哪里?
-
所以问题是我需要找到最后使用的前十个软件版本。而且你不能在 Linq 或任何东西中订购不同的东西。我无法向您展示 DBContext,因为这是我工作的公司内部的。对不起大家。但是,如果可能的话,将 SQL 转换为 LinQ 不是很简单吗?您不必为我编写确切的代码。我已经使用 LinQ 很长时间了。
-
请分享您的 C# 代码,以便我们为您提供帮助。
-
刚刚更新了页面。我不能给你原始的上下文,但是现在用一个小例子更好地描述我的问题
标签: c# sql linq entity-framework-core