0

Npgsql ドライバーを最新バージョン (2.0.5) に更新したところ、NHibernate アプリでエラーが発生しました... マッピング:

学校のマッピング :

...

References(x => x.City);

...

そしてシティマッピング:

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

さて、School を読み込もうとしたときに、オブジェクト City に対して NHibernate.ObjectNotFoundException が発生しました...しかし、Npgsql 1.0 ではすべて正常に動作します...

何か案が?

ありがとう

4

2 に答える 2

0

まず、 が存在すると確信していCityますか? これら 2 つのテーブルに対して SQL クエリを実行できますか? つまり、SELECT * FROM School LEFT JOIN City ON School.City = City.Id WHERE School.Id = 12345あなたが期待するものを返しますか?

その場合は、NHibernate が期待どおりのクエリを生成していることを確認します。次のように、Fluent インターフェイスで show SQL プロパティを設定できます。

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

その設定が完了すると、NHibernate は実行中のクエリを書き込み、セットアップ方法に応じて、ログや単体テストなどに表示される場合があります。

于 2009-06-04T15:02:10.107 に答える