entity-framework - Entity Framework 日期时间与 SQL Server 日期

标签 entity-framework date entity-framework-4.3

我正在使用 Entity Framework 4.3。在我的 SQL Server 2008 数据库中,我将一些日期存储为日期而不是日期时间。

我需要使用日期字段检索数据,这里是测试代码示例:

    public static Applicant Create()
    {   
        var dt = new DateTime(1967, 08, 03);

        var r = new CrudRepo<Applicant>(UowHelper.GetUow().Context);

        return r.Find(a => a.DateOfBirth == dt).Single();
    }

但是,我遇到了“缺少序列”的问题。

关于如何解决这个问题有什么想法吗?

有时我也需要更新数据库。

谢谢。

最佳答案

var dt = new DateTime(1967, 08, 03);的实际结果是8/3/1967 12:00:00 AM

DateOfBirthDataTypeDate,因此我们需要 TruncateTime 时间。

msdn:EntityFunctions.TruncateTime Method

public static Applicant Create()
    {   
        var dt = new DateTime(1967, 08, 03);

        var r = new CrudRepo<Applicant>(UowHelper.GetUow().Context);

        return r.FirstOrDefault(a => a.DateOfBirth == EntityFunctions.TruncateTime(dt));
    }

或删除 .Single() 方法 而使用 .FirstOrDefault() Method

关于entity-framework - Entity Framework 日期时间与 SQL Server 日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14444267/

相关文章:

c# - 在 C# 中将字符串转换为日期

c# - Entity Framework 4.3 - TPH 映射和迁移错误

c# - 在 Repository 层查询多个实体时返回什么类型?

database - 是否有一种模式可以避免在数据库设计中不断增加链接表?

c# - 添加 ViewModel 类将代码优先模型添加到数据库

java - 如何将参数的日期转换为日期格式 yyyyMMdd

c# - 将值传递给 Controller ​​方法时出错

php - 通过下拉列表进行日期验证

c# - 在查询中预先加载的动态包含语句 - EF 4.3.1

entity-framework - EF 4.3 迁移 - 如何生成降级脚本?