在 LINQ 查询Where子句中使用新的日期时间

问题描述 投票:0回答:1

大家晚上好 我这里有一个数据库,由于我无法理解的原因,条目有效性的年份和月份存储在两个单独的字段中......

年份=2023 月份部分=2

现在我需要创建一个 LINQ 查询来根据日期时间输入检索数据...

在 LINQ Pad 中,这样的事情是可能的:

var data2 = data.Where(t => new DateTime(t.DtmZlpServiceIBS.YearPart, t.DtmZlpServiceIBS.MonthPart, 1) <= fromDate);

有人知道我如何实现这个吗?

问候 彼得

由 DeepL.com 翻译(免费版)

c# linq linq-to-entities
1个回答
0
投票

这应该是可翻译的:

var fromYear = fromDate.Year;
var fromMonth = fromDate.Month;

var data2 = data.Where(t =>
    t.DtmZlpServiceIBS.YearPart < fromYear ||
    (t.DtmZlpServiceIBS.YearPart == fromYear && t.DtmZlpServiceIBS.MonthPart <= fromMonth));
© www.soinside.com 2019 - 2024. All rights reserved.