我正在使用Fluent Nhibernate。 Mapping类看起来如下:
public class CategoryMap : ClassMap<Category>
{
public CategoryMap()
{
Id(x => x.CategoryId).UniqueKey("CategoryId").GeneratedBy.Increment();
Map(x => x.CategoryName).Not.Nullable();
References(x => x.ParentCategory).Column("ParentCategoryId").Nullable();
}
}
这是我需要创建的表格,但在SSMS中,我认为CategoryId不是身份。
为什么自动增量(标识)不起作用?
答案 0 :(得分:4)
使用Identity而不是Increment,您不需要指定UniqueKey,因为主键必须是唯一的。
AccessibilityEvent
我不确定Increment的用例是什么,或者最新的NHibernate文档在哪里,但是你可以在这里阅读5.1.5.1节中关于不同类型的ID生成器的内容:http://nhibernate.info/doc/nhibernate-reference/mapping.html