Отображения много-к-одному NHibernate обновляют неизмененную таблицу

StackOverflow https://stackoverflow.com/questions/245102

  •  05-07-2019
  •  | 
  •  

Вопрос

У меня есть ситуация, когда у меня есть две сущности с общим первичным ключом (Transaction и TransactionDetail). Я сопоставил их, используя отношение «многие к одному» из Transaction в TransactionDetail и из TransactionDetail в Transaction. Деталь транзакции содержит одну запись для каждой транзакции.

Однако, когда я создаю новый объект сведений о транзакции и добавляю его в транзакцию, NHibernate пытается обновить таблицу транзакций с помощью запроса типа «обновить транзакцию с идентификатором =?» где id =? ' с одинаковым значением для каждого параметра.

Поскольку сопоставление находится в столбце первичного ключа, я не хочу, чтобы транзакция обновлялась. Фактически, поскольку первичный ключ является столбцом идентификаторов, я получаю сообщение об ошибке при попытке обновить значение. Как я могу запретить NHibernate обновлять таблицу Transaction при создании новой записи TransactionDetail?

Это было полезно?

Решение

Возможно, вы захотите взглянуть на типы сопоставлений one-to-one или join-table . many-to-one означает что-то конкретное, и похоже, что ваш случай может лучше соответствовать профилю одного из двух других типов сопоставлений.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top