クラス A が 1 つあり、他の 2 つのクラスを参照し、マップは次のようになります。
public class AMap : ClassMap<A>
{
public AMap()
{
Id(p => p.ID);
References(p => p.B).Cascade.All();
References(p => p.C).Cascade.All();
}
}
public class BMap : ClassMap<B>
{
public BMap()
{
Id(p => p.ID);
Map(p => p.Name);
}
}
public class CMap : ClassMap<C>
{
public CMap()
{
Id(p => p.ID);
Map(p => p.Name);
}
}
次に、A を DB (MySql) に追加操作を実行すると、テーブル ID の 1 つが unkonw 列であると常にプロンプトが表示されるのはなぜですか?
背景: これは asp.net mvc アプリケーション (CurrentSessionContextClass が「web」に設定されている) でテストされています。同じコードは非 Web アプリケーション (CurrentSessionContextClass が「call」に設定されています) でうまく機能します。