Компонент Nhibernate с проблемой отображенного класса - PullRequest
0 голосов
/ 02 декабря 2009

Я работаю с oracle и nhibernate.Я могу выбрать список объектов из таблицы БД (все элементы в таблице) как Iquerable, но когда я пытаюсь выбрать элемент из списка с помощью «linq where clause», он отправляет бессмысленный запрос в oracle db.И он получает неверный идентификатор ошибки.

Я могу получить весь список без каких-либо ошибок в запросе, это происходит, когда я использую предложение where.

(Некоторая информация о документе запроса и сопоставления приведена ниже)query:

SELECT this_.ID as ID33_0_,
this_.BUNDLEID.........................Where bundleitem1_.ID = :p0

(bundleitem1_.ID недействителен)

связанная часть отображения:

<component name="BundleItem"
class="PromissoryNotes.Server.Data.Bundle,
PromissoryNotes.Server.Data">
     <property name="Id" column="BUNDLEID" type="decimal"></property>

Коппонент "Bundle" имеет отображение отдельно в другом документе xmlЯ понял, что когда я изменяю класс Bundle на другой не отображенный класс, это работает.Проблема в компоненте с отображенными классами как Bundle.Какое решение, любая идея?

Ответы [ 2 ]

1 голос
/ 22 декабря 2009

Вы уверены, что это действительно должно быть отображено как компонент? Должно ли это быть сопоставление «многие к одному»?

Возможно, что-то вроде:

<many-to-one name="BundleItem" column="BundleId" cascade="save-update" />
0 голосов
/ 28 декабря 2009

Я вижу, что это ошибка nhibernate. Сопоставленный класс не может использоваться как компонент.

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