.net - 如何在Entity Framework/SQL Server 2008项目中切换到datetime2

标签 .net sql-server entity-framework-5 entity-framework-migrations

我们有一个 Entity Framework 5.0 项目,其中使用 SQL Server 2008 进行代码优先迁移,但所有日期属性都是在数据库中创建为 datetime 列,而不是 datetime2

是否可以使用 add-migration 创建迁移来更新数据库中的所有 datetime 列?有没有其他简单的方法可以在任何地方切换到 datetime2

最佳答案

这是一篇旧文章,但如果您想将所有日期时间列切换为 datetime2,并对您添加的任何新列使用 datetime2(换句话说,让 EF 默认使用 datetime2),您可以将其添加到您的上下文中的 OnModelCreating 方法:

modelBuilder.Properties<DateTime>().Configure(c => c.HasColumnType("datetime2"));

那会得到所有的DateTime和DateTime吗?模型中所有实体的属性。

关于.net - 如何在Entity Framework/SQL Server 2008项目中切换到datetime2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15687408/

相关文章:

c# - 将数据传递给 .net Web 服务并取回结果?

sql-server - 如何将 SQL Server 数据库对象添加到 TFS?

sql-server - 为什么通过函数调用 dbListTables 时会给出警告消息? (R DBI)

razor - MVC 4 - 如何在 View 中将 linq 返回到实体查询结果

c# - WebSecurity.CreateUserAndAccount 属性值

entity-framework - 将 EF Add-Migration 脚本编写到自动构建任务中

c# - 如何从 .dll 访问应用程序配置?

c# - TPL Fire and Forget 使用单独的类

.net - 获取结果类型为自定义派生 UserPrincipal 的 AD 组的成员

sql-server - FireDAC SQL Server 连接 : Untrusted certificate