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递增?