[Test]
[Ignore]
public void Create_Database_Schema_From_MappingFiles()
{
Configuration cfg = new Configuration();
cfg.Configure();
var schema = new SchemaExport(cfg);
schema.Create(true, false);
}
[Test]
[Ignore]
public void Update_an_existing_database_schema()
{
Configuration cfg = new Configuration();
cfg.Configure();
var update = new SchemaUpdate(cfg);
update.Execute(true, false);
}
3 回答
我会把它分解成一个单独的集会;然后,您可以从各种地方(控制台应用程序,集成测试设置,安装程序等)使用它 .
作为一个想法:您可以将它放在ProjectInstaller中,该ProjectInstaller可选地接受命令行参数 . 因此,您不必为此提供额外的控制台应用程序 .
我个人使用两个测试(在这种情况下使用Nunit)来创建或更新数据库 . 在这两种情况下,我只生成脚本,因为我想要完全控制数据库何时创建或更新 .