有几个重载:你能解释一下GeneratedBy.HiLo(...)的参数吗?
GeneratedBy.HiLo(string maxLo);
GeneratedBy.HiLo(string maxLo, Action<ParamBuilder> paramValues);
GeneratedBy.HiLo(string table, string column, string maxLo);
GeneratedBy.HiLo(string table, string column, string maxLo, string where);
GeneratedBy.HiLo(string table, string column, string maxLo, Action<ParamBuilder> paramValues);
我理解概念的高/低位算法做了什么。但是这些参数做什么?我无法在Hibernate上找到他们实际做的文档。
是maxLo
应该是一个名字还是数字?什么是paramValues? table
和column
的用途是什么?基于NHibernate的
示例用法入门教程:
public class StoreMap : ClassMap<Store>
{
public StoreMap()
{
Id(x => x.Id).GeneratedBy.HiLo("something");
Map(x => x.Name);
HasMany(x => x.Staff)
.Inverse()
.Cascade.All();
HasManyToMany(x => x.Products)
.Cascade.All()
.Table("StoreProduct");
}
}
器MAX10是希洛的低价值,因此,如果指定10时,将产生10个号码你喜。所以如果你的Hi现在是3,它会产生31到40(或30到39,我忘记了)。这只适用于你允许NHibernate为你生成表格的情况。如果你使用Table/Column/Condition,那么你可以指定NHibernate获取Hi值的位置。从。 – Phill
您应该将其作为答案提交。 – Amy
完成后,我充实了一下,并附上了一个链接到我的博客,其中显示了如何使用自己的表格配置HiLo。希望能帮助到你。 – Phill