0

現在、私は他の誰かによってプログラムされたプロジェクトに取り組んでおり、NHibernateの部分がうまく実装されていない可能性があることが知られています。インターンシップ中にそれを改善するように頼まれましたが、NHibernateにも非常に慣れていません。選択後にフラッシュがあったコード部分に出くわしましたが、私の意見では完全に役に立たないのですが、私は正しいですか(質問1)?私はほぼ完全なNHibernateドキュメントを読みましたが、すべてを理解できるかどうかはわかりません。

選択の前にフラッシュする必要がありますか(質問2)?フラッシュ後に選択すると、データは最新になると思います。

(現在、プログラムはトランザクションをまったく使用していません-そこでは改善の余地がたくさんあります)

4

1 に答える 1

1

NH の公式文書には次のように記載されています。

9.7.1. セッションのフラッシュ

ITransaction API を使用している場合は、この手順について心配する必要はありません。トランザクションがコミットされると暗黙的に実行されます。それ以外の場合は、ISession.Flush() を呼び出して、すべての変更がデータベースと同期されるようにする必要があります。

読み取りであっても、常に transactions を使用する必要があります。

トランザクションを使用していない場合は、書き込み後に Flush を使用する必要があります。
読み取り後にフラッシュするのはあまり意味がありません。すべてが非常によく説明されて
いるこれら2つの 答えを見てください。

于 2012-07-24T10:52:27.143 に答える