Отключить объект от сеанса NHibernate - PullRequest
11 голосов
/ 06 марта 2011

В моем сеансе nhibenate я сопоставляю объект с AutoMapper и в действии afterMap создаю новый экземпляр объекта, потому что извлекаю объект из БД для сравнения свойств. Таким образом, AutoMapper создает два экземпляра одного объекта с одинаковым идентификатором. Когда я пытаюсь зафиксировать сеанс, я получаю сообщение об ошибке с тем же идентификатором.

Итак, я хочу отключить объект, который я извлекаю после сравнения свойств. После этого я смогу зафиксировать сессию

Как мне это сделать?

Спасибо!

1 Ответ

13 голосов
/ 06 марта 2011

Вы можете использовать session.Evict(persistentObject), чтобы исключить постоянный объект из сеанса. Это удалит объект из кэша 1-го уровня, что позволит вам очистить сеанс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...