EF6检查指定日期是否存在记录

时间:2016-02-17 19:31:30

标签: c# entity-framework-6

我正在为已填充的表生成统计信息表。 EUR是源表,Stats是目标表。

我希望每天在目标表中有一行,源表中有记录。

我有这段代码

 DateTime dt = date.Date; // Source Date
                    destinationRow = 

dme.Statistics.FirstOrDefault(d => d.DateString.Date == dt); // Does a row for this day exist?

所以我遍历源表中的每一行并获取Date然后我尝试查看源表是否有Date的行 - 但是EF Complains我不能使用查询中的Date

那么如何在不查询表格的情况下检查具有特定Date的行的目标表。获得DateTime后,转换并检查并再次更新或创建行?

1 个答案:

答案 0 :(得分:3)

您可以使用TruncateTime方法,如下所示:

var result = dme.Statistics
    .FirstOrDefault(d =>
        DbFunctions.TruncateTime(d.DateString) == dt);