实体框架和默认日期

The*_*Guy 4 entity-framework

我在SQL中有一个表,在该表中我有DateTime列,默认值为GetDate()

在实体框架中,我希望它使用SQL日期时间,而不是使用运行控制台应用程序的计算机的本地日期时间(SQL服务器落后1小时).

该列也不允许空值,目前它传递的日期值为1/1/0001,我收到错误:

将datetime2数据类型转换为日期时间数据类型会导致超出范围的值.\ r \n语句已终止.

谢谢!

Ser*_*kiy 20

  1. 打开edmx设计师
  2. 选择DateTime列
  3. 转到属性并StoreGeneratedPattern从更改NoneComputed

这将告诉EF不要为该列插入值,因此列将获得由数据库生成的默认值.请记住,您将无法传递某些价值.

  • 为什么EF默认不提供此功能?在Database-First场景中重新创建模型时很难维护. (3认同)