我在开发阶段使用NHibernate映射作为我的应用程序的定义模式,而我正在使用该NHibernate.Tool.hbm2ddl.SchemaExport()
方法生成一个创建脚本的模式定义.
现在,我已经考虑使用该Configuration.GenerateSchemaUpdateScript()
方法生成如下的数据库更改脚本:
var dialect = Dialect.GetDialect(configuration.Properties); string[] schemaUpdateScript; using (var conn = new SqlConnection( configuration.GetProperty("connection.connection_string"))) { conn.Open(); schemaUpdateScript = configuration.GenerateSchemaUpdateScript(dialect, new DatabaseMetadata(conn, dialect)); }
在此之后,我将架构更新脚本保存到以时间戳命名的脚本文件.
这是在NHibernate中管理模式更改的好方法吗?
有什么重大缺点吗?