私には2つのクラスがあります:
public class User
{
public virtual int Id { get; set; }
public virtual string Name { get; set; }
}
public class Report
{
public virtual int Id { get; set; }
public virtual string Name { get; set; }
public virtual User User { get; set; }
}
...ここで、クラスUserはデータベース内の既存のテーブルです。ここで、データベースにテーブルとして追加したいと思いReportます。このために、FluentNHibernateを使用する予定です。クラスからアクセスできるようにしたいので、Userとの両方をマッピングしています。との間には1対多の関係があります。ReportUserReportUserReport
SQLスクリプトをデータベースにエクスポートするテストがすでにありUser、これらに含まれています。Userここで、FNHによって生成されたスクリプトもエクスポートしたいのですが、FNHはすでにデータベースにあるため、生成したくありません。
したがって、SchemaAction.None()のマッピングで指定できますUser。これにより、FNHはのスクリプトを生成せずUser、のスクリプトのみを生成しますResult。唯一の問題は、テーブルに外部キーが生成されないことですReport。UserFNHで生成されたスクリプトをエクスポートせずに、テーブルの外部キーをエクスポートするにはどうすればよいReportですか?
SchemaActionを指定しないと、テーブルUserとReportが作成され、外部キーReportが生成されます。