Linq to SQL や Entity Framework と同じように、NHibernate で「追加」操作をキューに入れる方法はありますか?
エンティティをリポジトリに追加したいのですが、ビジネス ロジックが複雑であるため、すぐにデータベースに保存したくありません。Entity Framework と同じように、ITransaction.Commit() を呼び出すときにすべての変更を送信したいと考えています。それをしてもいいですか?
注: ISession.Save() メソッドを呼び出すとすぐに NHibernate が挿入コマンドを実行することがわかりましたが、これは想定外です。
更新: FlushMode を Commit に設定してみます。ただし、ITransaction.Commit() を呼び出したときにすべての変更をコミットするのではなく、エンティティをすぐに保存します。
更新 2ここで理由を見つけましたhttp://nhibernate.info/doc/nh/en/index.html#manipulatingdata-flushing : (例外は、ネイティブ ID 生成を使用するオブジェクトが保存時に挿入されることです)。IDジェネレーターを「ID」以外のものにしか変更できませんか?EntityFramework のソリューションに似たソリューションは他にありませんか?