C# 4.0 使用代码优先的方法强制应用程序在没有种子方法的情况下创建表

C# 4.0 使用代码优先的方法强制应用程序在没有种子方法的情况下创建表,c#-4.0,asp.net-mvc-5,entity-framework-6,C# 4.0,Asp.net Mvc 5,Entity Framework 6,由于某些原因(说来话长),我不能使用自动代码优先迁移。但是我需要能够创建SQL脚本,以便在基于模型的数据库中创建表(任何其他具有相同结果的方法都很好),而无需编写Seed方法?有时我不需要任何种子,只要创建表就可以满足我的需要,因为我必须测试创建记录。但是我找不到办法。有什么建议吗?您可以使用迁移来生成带有-script的脚本,而不是直接使用更新数据库来更新数据库 PM> Enable-Migrations Checking if the context targets an existi

由于某些原因(说来话长),我不能使用自动代码优先迁移。但是我需要能够创建SQL脚本,以便在基于模型的数据库中创建表(任何其他具有相同结果的方法都很好),而无需编写Seed方法?有时我不需要任何种子,只要创建表就可以满足我的需要,因为我必须测试创建记录。但是我找不到办法。有什么建议吗?

您可以使用迁移来生成带有
-script
的脚本,而不是直接使用
更新数据库
来更新数据库

PM> Enable-Migrations
Checking if the context targets an existing database...
Code First Migrations enabled for project WebApplication10.
PM> Add-Migration Initial
Scaffolding migration 'Initial'.
PM> Update-Database -TargetMigration Initial -Script
Applying explicit migrations: [201404151642086_Initial].
Applying explicit migration: 201404151642086_Initial.
PM> 

此时,您应该可以看到脚本。我认为它不包括任何种子数据。如果有,请在运行脚本之前删除它。

非常感谢,这正是我需要的。