0

複数の新しいエンティティを作成するプロセスがあります。それらをコレクションに追加しようとしました(.Persist()を実行して)、コレクションの準備ができたら、トランザクションをコミットしようとしました。

Transaction.Commit() を呼び出すまでデータベース呼び出しが実行されていないことを確認しましたが、commit を呼び出すと、個々のエンティティごとに呼び出しが行われていることがわかります。

同じタイプのエンティティのコレクション全体を一度に保存する方法はありますか?

4

2 に答える 2

2

バッチサイズを設定しましたか?

http://ayende.com/Blog/archive/2006/09/16/BatchingSupportInNHibernate.aspx

流暢な設定で設定してみてください

.AdoNetBatchSize(10)

http://fluentnhibernate.org/api/FluentNHibernate.Cfg.Db/PersistenceConfiguration%602.htm

これがお役に立てば幸いです。

于 2010-10-04T19:22:06.943 に答える
2

また、主キー Nhibernate を使用している場合の挿入については、挿入Identityをバッチ処理できません。

于 2010-10-04T20:22:27.287 に答える