Отображения много-к-одному NHibernate обновляют неизмененную таблицу - PullRequest
1 голос
/ 29 октября 2008

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

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

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

1 Ответ

2 голосов
/ 29 октября 2008

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

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