Дубликаты записей - PullRequest
0 голосов
/ 14 мая 2010

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

таблица1 (одна), таблица2 (много). Я создаю запрос критерия, чтобы получить определенную запись из таблицы1. Затем я ожидаю получить все связанные записи из таблицы 2. то есть table1 содержит заказы, table2 содержит позиции. Я запрашиваю table1, чтобы получить заказ, который имеет 4 элемента. Я ожидаю увидеть каждый из этих 4 пунктов из таблицы 2, но все, что я вижу, это первый элемент, повторенный 4 раза.

Кто-нибудь знает, что может происходить?

Ответы [ 2 ]

1 голос
/ 14 мая 2010

Я обнаружил, что проблема в составном ключе таблицы 2. Я включил отображение составного идентификатора, и оно работало нормально.

Благодаря коду здесь , чтобы получить информацию об ошибках Equals и GetHashCode.

Спасибо

0 голосов
/ 14 мая 2010

NHibernate выполняет объединение для выполнения вашего запроса. Чтобы получить отчетливые результаты, используйте DistinctEntityRootTransformer.

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