Ste*_*anG 6 .net c# entity-framework code-first
我正在为我的项目实现实体框架(v5)基于代码的迁移.
来自我们客户的数据库管理员有时会有点偏执,并希望手动执行sql脚本.
由于我们已经有很多版本并且我们支持SqlServer和Oracle并行,我们不希望从所有可能的版本管理多个更新脚本xxxx到yyyy是否有可能以与我调用它相同的方式以编程方式获取sql脚本在程序包管理器控制台中
Update-Database -Script
Run Code Online (Sandbox Code Playgroud)
因此,客户端将通过一个简单的控制台应用程序,取决于他的数据库系统和当前版本正确的sql脚本作为输出.
Bas*_*ili 10
var configuration = new Configuration();
var migrator = new DbMigrator(configuration);
var scriptor = new MigratorScriptingDecorator(migrator);
var script = scriptor.ScriptUpdate(sourceMigration: null, targetMigration: null);
Console.WriteLine(script);
migrator.Update();
var pending = migrator.GetPendingMigrations();
Run Code Online (Sandbox Code Playgroud)
更多信息:http: //weblogs.asp.net/fredriknormen/archive/2012/02/15/using-entity-framework-4-3-database-migration-for-any-project.aspx
基本上你需要
DbMigrator db = new DbMigrator(HERE CONNECTION STRING);
db.Update(HERE TARGET VERSION);
Run Code Online (Sandbox Code Playgroud)