我正在使用 EF 5 和 SQL Server 2005,Model First(有点)。
顺便说一下,我的意思是我通常在 SQL Server 设计器中构建我的架构,但将架构导入 EF,这样我就有了一个可视化视图。经常有往返。
但是,我注意到,当我尝试基于 EF 模型生成 DB 模式时,它会跳过我作为默认值分配给我的 Guid ID 的所有 NEWID() 默认值,但它不会跳过身份字段int 类型。
我发现这篇文章解释了这个原因: Entity Framework 4 and Default Values
但是,它没有回答我的问题:如何让 Entity Framework 为我的 uniqueidentifier 类型生成默认值为 NEWID() 的 SQL DDL 数据库模式?
笔记:
我不关心如何从 POCO 实体等中设置它们(有很多帖子对此进行了描述)——我关心的是正确生成 SQL DDL,这样我就可以为数据库播种而不必担心这些值会丢失。