最近FluenNHibernateの使用を開始しました。私はSQLiteで単体テストを作成しようとしたときに奇妙な問題が発生しました。HQL to SQLiteデータベースでNHibernateの単純選択が機能しないのはなぜですか?
私はテスト用のメモリデータベースにSQLiteを使用しています。各テストメソッドに対して、データベースに存在するデータをクリアしています。例では:
var u = new User() { Name = "Piotr" };
_session.Save(u);
_session.Clear();
var list = _session.CreateCriteria<User>().List();
このコードは正常に動作しますが、私は次の行に書くとき:
var list2 = _session.CreateQuery("FROM User").List();
私が取得:NHibernateのでgenereated
System.Data.SQLite.SQLiteException: SQLite error
no such table: users
SQLクエリで結構ですので、何が問題なの?
リストを再度取得する前に、セッションをフラッシュしてみてください。 –
申し訳ありません、エラーを表示します。あなたはデータベースのテーブル名Userとその名前をマッピングに混同しているかもしれません。マッピングの名前はテーブル名ではなく、テーブル名で使用する必要があります –
2番目のクエリは実際にコードの次の行ですか? – anonymous