0

私はMakeとModelsテーブルに値を挿入しました。しかし、両方のテーブルのIDが偶数と奇数に表示されています。流暢なNHibernateマッピング

Id列は、.GeneratedBy.Identity();と仮定します。親テーブルと子テーブルの両方のIdカラムに(1,2,3,4 .......)を指定します。

MAKE 
ID | Name 
----------- 
1 | BMW 
3 | Mercedes 

MODELS 
ID | Name | MakeID 
------------------ 
2 | Ex | 1 
4 | Lx | 3 

この問題を解決して、偶数または奇数を親テーブルと子テーブルに挿入しないようにする方法。

public MakeMap() 
{ 
    Id(x => x.Id).GeneratedBy.Identity(); 
    Map(x => x.Name); 
    HasMany<Models>(x => x.Models).Cascade.All().KeyColumn("MakeId"); 
    Table("Make"); 
} 

public ModelsMap() 
{ 
    Id(x => x.Id).GeneratedBy.Identity(); 
    Map(x => x.Name); 
    References<Make>(x => x.Make).Column("MakeId");     
    Table("Models"); 
} 

ご協力いただきますようお願い申し上げます。

ありがとう、

+0

これは起こりません。生成されるSQLを見ましたか? –

答えて

1

これはあなたのマッピングが原因であると確信していますか?どのデータベースを使用しているのかわかりませんが、(SQL Serverを例として使用して)ID仕様が2ずつ増分するように設定されている可能性はありますか?

関連する問題