Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [NHibernate] можно ли узнать айди будущего элемент 
V
    Опции темы
kosmonaFFFt
Дата 23.8.2009, 12:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 538
Регистрация: 14.4.2008
Где: Иннополис

Репутация: нет
Всего: 5



Доброго времени суток...
Можно ли узнать какой айди сгенерирует хибернейт у элемента, который будет добавлен в базу?
класс айдишника identity, тип Int32...
И если да, то как?



--------------------
user posted image
PM MAIL ICQ   Вверх
kobra
Дата 23.8.2009, 15:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 15.6.2005
Где: Грузия, Тбилиси

Репутация: 1
Всего: 9



причем тут хибернеит?
это зависит от сервера базы данных. 
PM MAIL   Вверх
SLeN
Дата 23.8.2009, 16:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 137
Регистрация: 8.12.2006
Где: SPB

Репутация: 1
Всего: 4



Может и есть, точно не знаю, но ИМХО:
Id в NHibernate это апендикс от БД, в реальной жизни объекты не повсеместно Id имеют... - работай с объектами

Единственное место где оно на мой взгляд надо это в репозитории GetById()
--------------------
Православные не проходите мимо! Люди нуждаются в вас
PM MAIL   Вверх
kosmonaFFFt
Дата 24.8.2009, 18:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 538
Регистрация: 14.4.2008
Где: Иннополис

Репутация: нет
Всего: 5



Мну просто в проге надо одной сущности сделать уникальный номер, и чтобы он отображался
в текстбоксе формы, в которой заполняются поля этой сущности, вот я и решил приспособить
для этих целей айдишник объекта. Хибернейт тут при том, что я использую его, база, если что,
SQLite. Подожду либо ответа на вопрос, либо совета как лучше решить задачу.


--------------------
user posted image
PM MAIL ICQ   Вверх
kobra
Дата 25.8.2009, 09:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 15.6.2005
Где: Грузия, Тбилиси

Репутация: 1
Всего: 9



Цитата(kosmonaFFFt @  24.8.2009,  18:55 Найти цитируемый пост)
база, если что,
SQLite
если расширение и перевод в многоползователский режим не предпалагается, тогда можно из таблицы взять максималный ид и следуищи сделать +1. ну естественно на старане клиента тоже придется проверить максималное ид
PM MAIL   Вверх
SLeN
Дата 25.8.2009, 10:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 137
Регистрация: 8.12.2006
Где: SPB

Репутация: 1
Всего: 4



Сохранить объект тогда ему id присвоется
--------------------
Православные не проходите мимо! Люди нуждаются в вас
PM MAIL   Вверх
kosmonaFFFt
Дата 26.8.2009, 10:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 538
Регистрация: 14.4.2008
Где: Иннополис

Репутация: нет
Всего: 5



А объект не сохранить, ибо данные не введены, а многие поля not-null.
Попробую вручную высчитывать...


--------------------
user posted image
PM MAIL ICQ   Вверх
kosmonaFFFt
Дата 2.9.2009, 14:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 538
Регистрация: 14.4.2008
Где: Иннополис

Репутация: нет
Всего: 5



Решил сделать класс айдишника assigned и генерировать его самому по принципу
"количество объектов в базе + 1".


--------------------
user posted image
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Базы данных под .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0464 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.