我有一个MVC代码优先应用程序,它根据我的架构创建数据库。在生产机器上,我们需要首先创建数据库(空,没有表),以便我们可以在连接字符串中为我的dbcontext分配正确的用户名和密码。考虑到数据库是在生产时创建的,我的代码应该做什么?
我不能使用DropCreateDatabaseIfModelChanges,因为已经创建了没有元数据的数据库..并且不能使用DropCreateDatabaseAlways,因为我只需要第一次创建它。
我也试过这个:
if (context.Database.Exists() && !context.Database.CompatibleWithModel(false))
context.Database.Delete();
if (context.Database.CreateIfNotExists())
但context.Database.CompatibleWithModel(false)由于某种原因在空数据库上返回总是为TRUE ...
答案 0 :(得分:0)
您可能需要手动通过SQL脚本部署数据库架构。您可以从生产数据库实例生成脚本。