Обновлен Npgsql (1.0 -> 2.05) и получена ошибка (ObjectNotFoundException) в NHIbernate - PullRequest
0 голосов
/ 04 июня 2009

Я обновил драйвер Npgsql до последней версии (2.0.5) и получил ошибку в моем приложении NHibernate ... Отображения:

Школьное картографирование:

...

References(x => x.City);

...

и картография города:

Id(x => x.ID).GeneratedBy.Assigned();
Map(x => x.Name);
References(x => x.Microrregion);

Теперь, когда я попытался загрузить School, я получил NHibernate.ObjectNotFoundException для объекта City ... Но с Npgsql 1.0 все работает нормально ...

Есть идеи?

Спасибо

Ответы [ 2 ]

0 голосов
/ 26 июня 2009
0 голосов
/ 04 июня 2009

Во-первых, вы уверены , что City существует? Можете ли вы выполнить SQL-запрос к этим двум таблицам? То есть SELECT * FROM School LEFT JOIN City ON School.City = City.Id WHERE School.Id = 12345 возвращает то, что вы ожидаете?

Если это так, убедитесь, что NHibernate генерирует ожидаемый вами запрос. Вы можете установить свойство show SQL в интерфейсе Fluent следующим образом:

PostgreSQLConfiguration
    .Standard // Or whatever dialect you are using
    .ConnectionString(...).ShowSql()

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

...