1

我按照惯例使用 nhibernate 3.2 映射。

这是我的代码。在我的 hilo 表中,NextHi 是 1。我删除了 User 表中的所有记录,然后在那里插入一个新用户。我插入的第一个用户的 ID 为 32768,而不是得到一个非常小的数字,例如 10 或 11。我不知道我是如何得到这个数字的。请让我知道我应该检查什么?

            mapper.BeforeMapClass += (modelInspector, type, classCustomizer) =>
                {
                    classCustomizer.Id(c => c.Column("Id"));
                    classCustomizer.Id(c => c.Generator(Generators.HighLow,
                        gmap => gmap.Params(
                            new{
                                max_low = 10, 
                                table = "Hilo", 
                                column = "NextHi", 
                                where = string.Format("TableKey = '{0}'", type.Name.ToLower())
                            })));

                };
4

1 回答 1

3

参数应该命名为max_lo,而不是max_low。它可能在Fabio Maulo的初始(并且只是现在)描述和生产 3.2 版本之间发生了变化。

于 2012-01-11T09:12:33.707 回答