0

我已經將值插入到Make和Models表中。但是兩個表中的ID都以偶數顯示。流利的NHibernate映射

Id列假設爲.GeneratedBy.Identity();作爲(1,2,3,4 .......)在父表和子表Id列中。

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作爲例子)是否可以設置爲2遞增?