让流畅的NHibernate构建数据库表

rts*_*ker 0 structuremap postgresql asp.net-mvc fluent-nhibernate

我正在使用ASP.NET MVC2,Fluent NHibernate,StructureMap和PostgreSQL构建应用程序.当谈到Fluent NHibernate时,我是一个全新的人.我从几个不同的来源获得了一个设置但是当我构建并运行我的应用程序时,它不会在我的连接字符串中为数据库创建数据库表.我有几个不同文件的代码,所以我不知道我需要发布哪个代码,如果我应该发布所有它.如果有一个要检查的密钥请告诉我或让我知道发布所有代码.谢谢!

Mar*_*ier 7

您可以使用SchemaExportNHibernate Core中的类将架构导出到数据库.

要执行模式导出,请使用ExposeConfigurationFluent NHibernate数据库配置API中的方法.

var sessionFactory = Fluently.Configure()
   .Database(/* ... */)
   .Mappings(/* ... */)
   .ExposeConfiguration(cfg => new SchemaExport(cfg).Execute(true, true, false))
   .BuildSessionFactory();
Run Code Online (Sandbox Code Playgroud)

还有一个SchemaUpdate类可用,它不会删除并重新创建您的模式,但会更新现有模式.如果要保留数据库中的数据,这非常有用.

SchemaExportSchemaUpdateNHibernate.Tool.hbm2ddl命名空间中可用.