实体框架 - 如何将精确的DateTime值复制到具有默认值GETDATE()的列?

时间:2015-09-29 13:35:28

标签: mysql sql entity-framework default-value

在POCO中,我有这个:

[DatabaseGenerated(DatabaseGeneratedOption.Computed)]
public DateTime? CreatedDate { get; set; }

迁移时,我有这个集合:

CreatedDate = c.DateTime(defaultValueSql: "GETDATE()")

这样我创建它时就不必设置myNewEntity.CreatedDate = DateTime.Now,并且按照预期将数据库插入数据库后保存当前数据库日期。

我将数据从此表迁移到另一个表,该表也具有与上述相同的CreatedDate声明/设置。问题是,设置myNewEntityInNewTable.CreatedDate = myOldEntity.CreatedDate不会起作用。插入时CreatedDate将是声明的当前数据库系统日期,而不是旧实体的CreatedDate。我希望这种行为用于实时插入,但不是用于将数据迁移到新表。我需要做什么?

注意:我无法使用SQL Management Studio的导入工具,因为我还必须执行代码级数据转换。即使我可以,我认为默认的GETDATE()仍然会赢并保存当前的系统日期。

0 个答案:

没有答案