将 SQL 查询转换为 LINQ for EntityFramework



我在将以下查询转换为 EF 时遇到问题:

SELECT DISTINCT
[CompanyId]
,[CompanyNumber]
,[ReturnsLastMadeUpDate]
FROM [CHX].[dbo].[CompanyDetailsDailyDump]
WHERE [InsertDate] BETWEEN '2012-12-19' and '2013-01-20'
ORDER BY [ReturnsLastMadeUpDate] DESC

主要问题在于 Distinct()。如何选择上述三个特定列来比较不同列而不是所有列。问候

您只需要在所有其他操作后应用 Distinct 即可。 即:

CompanyDetailsDaily
    .Where(x => x.InsertDate < DateTime.Parse('2013-01-20') && 
            x.InsertDate > DateTime.Parse('2012-12-19'))
    .OrderBy(x => x.ReturnsLastMadeUpDate)
    .Select(x => new{x.CompanyID,x.CompanyNumber,x.ReturnsLastMadeUpDate})
    .Distinct();

小心包含日期(其中一个>/<符号可能需要替换为>/<=)

相关内容

  • 没有找到相关文章

最新更新