У меня есть объект с отображением Nhibernate, который имеет суррогатный идентификатор и идентификационный номер. Начиная с курса естественный идентификатор однозначно ограничен, запрос на вставку не будет выполнен, если объект уже находится в базе данных с тем же естественным идентификатором. Мое решение для этого состояло в том, чтобы вручную проверить, есть ли в базе данных естественные идентификаторы, прежде чем пытаться вставить.Unique Constraint Nhibernate
Есть ли способ указать Nhibernate для выбора перед вставкой на естественные идентификаторы/уникальные ограничения?
Как валидаторы мне помогают? – Will
Ссылка, опубликованная Diego, является примером использования NH Validator для запроса базы данных, чтобы убедиться, что естественный идентификатор BlogPost (Title и Date) не нарушен. Это будет делать именно то, что вы просили - прежде чем пытаться сохранить объект, NHibernate проверит проверки, что приведет к выполнению запроса выбора. –