Генератор идентификаторов nhibernate hilo генерирует странные идентификаторы - PullRequest
1 голос
/ 11 января 2012

Я использую отображение nhibernate 3.2 по соглашению.

вот мой код. в моей hilo таблице NextHi равен 1. Я удаляю все записи в таблице User, затем вставляю туда нового пользователя. Вместо того, чтобы получить действительно маленькое число, такое как 10 или 11, у первого пользователя, которого я вставил, был Id 32768. Я не знаю, как мне получить это число. пожалуйста, дайте мне знать, что я должен проверить?

            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())
                            })));

                };

1 Ответ

3 голосов
/ 11 января 2012

Параметр должен иметь имя max_lo, а не max_low. Вероятно, он изменился между первоначальным (и только сейчас) описанием Фабио Мауло и выпуском 3.2.

...