我有一个主列作为ID的表.但该列不是标识列.所有值都是明确提供的.
下面是我的映射类
public ObjectTypeMap()
{
Table("OBJECTTYPE");
Id(x => x.ObjectTypeId);
Map(x => x.Title).Not.Nullable();
Map(x => x.Description);
}
Run Code Online (Sandbox Code Playgroud)
但是当我尝试使用session.save保存此对象时,我收到错误消息
"无法将值NULL插入列'ObjectTypeId',表'DiscoveryWEBTest.dbo.ObjectType';列不允许空值.INSERT失败.\ r \n语句已终止."
但在我的对象中,我提供了ObjectTypeId的值.
问题是Fluent NHibernate将ID映射视为自动增量列,但在数据库中ObjectTypeId不是一个标识列,这就是为什么insert语句没有获取任何值并抛出null错误.
有没有一种方法可以告诉该列是一个ID列,但它的值不是自动递增的?
提前致谢
| 归档时间: |
|
| 查看次数: |
1720 次 |
| 最近记录: |