5

nhibernate を使用する .NET 2008 MVC アプリケーションを継承しました。以前の開発者は、このプロジェクトのデータベースを生成するまでには至りませんでした。現在のマッピングを使用して新しいデータベースを作成するためのデータベース スクリプトを作成するための最適なソリューションを見つけようとしています。私はこのサイトで多くの記事を読みましたが、これを機能させる方法をまだ完全には理解していません. 任意のガイダンスをいただければ幸いです。

ありがとうございました!

4

1 に答える 1

7

hbm.xml マッピングと有効な nhibernate 構成ファイルがあると仮定すると、コンソール アプリに次のコードを記述して SQL スキーマを生成できます。

//load initial config from hibernate config file
Configuration cfg = new Configuration().Configure("hibernate.cfg.xml");

//add assembly in which the hbm.xml mappings are embedded (assuming Product class is in this assembly)
cfg.AddAssembly(typeof(Product).Assembly);

//this will generate the SQL schema file in the executable folder
new SchemaExport(cfg).SetOutputFile("schema.sql").Execute(true, false, false);

流暢なマッピングがある場合は、次のようになります。

Fluently.Configure().Database(MsSqlConfiguration.MsSql2005).Mappings(
            m => m.FluentMappings.AddFromAssemblyOf<Product>()).ExposeConfiguration(
                config =>
                    {
                        new SchemaExport(config).SetOutputFile("schema.sql").Execute(true, false, false);
                    }).BuildConfiguration();
于 2013-06-20T20:01:56.140 に答える