我成功地获得功能NHibernate通过调用UpdateBaseFiles更新我的数据库:使功能NHibernate输出架构更新到文件
Public Sub UpdateBaseFiles()
Dim db As SQLiteConfiguration
db = SQLiteConfiguration.Standard.UsingFile(BASE_DBNAME)
Fluently.Configure() _
.Database(db) _
.Mappings(Function(m) m.FluentMappings.AddFromAssemblyOf(Of FluentMap)()) _
.ExposeConfiguration(AddressOf UpdateSchema) _
.BuildConfiguration()
End Sub
Private Sub UpdateSchema(ByVal Config As Configuration)
Dim SchemaUpdater As New SchemaUpdate(Config)
SchemaUpdater.Execute(True, True)
End Sub
我如何输出的DDL到文件,当我这样做最初创建模式通过使用:
Private Sub BuildSchema(ByVal Config As Configuration)
Dim SchemaExporter As New SchemaExport(Config)
SchemaExporter.SetOutputFile("schema.sql")
SchemaExporter.Create(False, True)
End Sub
但SchemaUpdate没有SetOutputFile方法。
我当然,这将在C#中工作,但我有麻烦的代表模板转换为VB,任何想法? – Bender 2010-03-21 14:12:13
我不确定你可以看到http://stackoverflow.com/questions/892021/actionof-t-in-visual-basic-in-listof-t-foreach。 – 2010-03-23 12:13:39
这将无法正常工作,因为操作委托会在每个ddl语句中被调用,所以最后一个将被写入该文件。您可以使用filemode.append,或将文件流创建移到操作委托之外。 – Jokin 2011-06-22 18:36:08