-1

最も基本的な例を FnH で実行しようとしています。私は Examples.FirstProject から始めました。ただし、SQL lite 構成は使用しませんでした。代わりに、構成を SQL2005 に設定し、例に示されているようにテーブルを作成しました。

コードをステップ実行すると、セッション ファクトリの作成時に問題がないように見えます。ただし、コードが「transaction.commit」行に到達するとエラーが発生します。エラーは次のとおりです。

Could not insert collection: [Examples.FirstProject.Entities.Store.Products#5][SQL:SQL not available]

SQL Server でのテーブルの作成方法に問題があったのではないかと考えています。IDは「int」型で、名前などは「varchar(50)」でした。Store、Product、Employee の PK をそれぞれの ID フィールドに設定します。また、ID を自動的に 1 ずつ増やしました (SQL Server の IdentitySpecification 列プロパティ)。StoreProduct は多対多であり、図にもあります。

どんな助けでも大歓迎です。ありがとう。

4

3 に答える 3

1

データベース提供を変更する以外の方法でサンプルを変更しましたか?サンプルからエンティティを保存できましたか(つまり、Productsコードを削除してを保存した場合Store)?

このサンプルはSQLExpressに対して開発したので、SQL2005との非互換性はないと思います。

また、 Stack Overflowはこの種の調査投稿には適していないため、この質問はおそらくFluentNHibernateメーリングリストに適しています。

于 2009-03-24T09:08:33.590 に答える
0

最初に確認すること: SQL サーバーで正しいテーブルを作成したこと、およびスキーマが正しいことを確認しますか? これは、 SQL Express 管理スタジオを使用して sql データベースを表示することで確認できます。

于 2009-09-12T10:11:51.813 に答える