2010-08-10 45 views
0

我正在與ASP.NET MVC2,流利的NHibernate,StructureMap和PostgreSQL構建一個應用程序。當談到Fluent NHibernate時,我是一個全新手。我得到了一個來自兩個不同來源的設置,但是當我構建並運行我的應用程序時,它不會爲我的連接字符串中的數據庫創建數據庫表。我有幾個不同的文件中的代碼,所以我不知道我需要發佈哪些代碼,如果我應該發佈所有代碼。如果有一個密鑰需要檢查,請讓我知道或讓我知道發佈所有代碼。謝謝!獲得流利的NHibernate構建數據庫表

回答

6

您可以使用NHibernate Core中的SchemaExport類將模式導出到數據庫。

要執行模式導出,請在Fluent NHibernate數據庫配置API中使用ExposeConfiguration方法。

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

還有一個SchemaUpdate類可以不刪除並重新創建模式,但也更新現有的架構。如果你想保存數據庫中的數據,這很有用。

SchemaExportSchemaUpdate可用於NHibernate.Tool.hbm2ddl命名空間。

+0

好吧,沒有工作..我可能沒有得到這個設置正確的MVC ...嗯。有沒有人知道一個鏈接,概述瞭如何準確設置ASP.NET MVC應用程序? – vol4life27 2010-08-10 21:42:17

+0

看看Sharp Architecture(http://www.sharparchitecture.net/)及其Northwind示例應用程序。 – 2010-08-11 20:16:40

0

FluentNhiberante SessionSource對象公開CreateSchema。

var sessionFactory = Fluently.Configure()... 
var sessionSource = new SessionSource(sessionFactory); 
sessionSource.BuildSchema() 
相關問題