【发布时间】:2021-03-02 20:07:17
【问题描述】:
我们使用的是 Entity Framework 3.1,并且对 .HasDefaultValueSQL 有一些引用。
entity.Property(e => e.UpdateTimeStamp)
.HasColumnType("datetime")
.HasDefaultValueSql("GetDate()");
出于某种原因,我们必须更改 GetDate(),而这只是我们代码中的一处,而实体框架中没有本地知识。
我的问题是,HasDefaultValueSQL 中的值在数据库优先实现中有何作用?
我们已经更改并测试了多个其他字符串的值,到目前为止,我们觉得它没有被使用,但找不到任何类型的文档或指南来显示它的作用,以及在我们的案例中改变它会做什么。
【问题讨论】:
-
无,它用于代码优先,实体定义将定义架构。如果 EF 打算在 DB-First 中运行,请确保关闭迁移/模式初始化,否则在手动更改模式后运行应用程序时可能会出现验证异常。
-
@StevePy 那是我们目前的工作理论,我们只是没有证据证明,这使得将其呈现给权力不太理想的选择。
标签: c# .net entity-framework