【发布时间】:2015-06-08 08:29:49
【问题描述】:
自 1985 年以来我一直在使用 SQL,因此对数据库服务器非常熟悉。
我认为 (C#) Code First 是另一种时尚,它来了又去。它似乎适合没有 DBA 背景的人。同样,如果使用 Code First 并且您不知道要连接到什么 DB,例如,稍后可能是 Mongo,这也是一个有用的抽象。 Code First 不会让自己进入数据库图,因此您可以看到发生了什么。
我想知道您如何首先使用代码将更改推广到生产 SQL 服务器,与使用 ALTER TABLE 命令不同,您不想删除和重新创建数据库。我使用了 Red-Gate 的工具,这些工具使 DB 代码促销变得容易。
那么为什么要编码优先呢?
您如何将数据库更改转移到生产环境中?
【问题讨论】:
-
您使用迁移脚本? EF 在其tutorials 中对此进行了介绍。 What have you tried?
-
好像是迁移脚本。如果没有重大更改,则可以运行“更新数据库”。发现一大堆你在 CodeFirst 中做不到的事情。更不用说使用 EXEC sp_addextendedproperty N'MS_Description' 为 DBA 设置 GetDaate() 或 NewID() 或文档之类的东西了,似乎您认为 DB 是垃圾场,反之亦然。但我猜它是一个抽象。
标签: c# sql-server entity-framework mongodb ef-code-first